/* Workshop memories: an automatic photo feature immediately after the hero. */
.workshop-home #gallery{padding:24px 0 34px;scroll-margin-top:110px}
.moments-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:16px}
.moments-heading h2{font:700 clamp(25px,2.6vw,34px)/1.4 var(--display);color:#204e50;margin:0;letter-spacing:-.02em}
.moments-heading p{font:400 15px/1.7 var(--body);color:#526c61;margin:0}
.moments-stage{position:relative;isolation:isolate;width:100%;height:clamp(380px,42vw,540px);overflow:hidden;border-radius:16px;background:#183d38;box-shadow:0 12px 28px rgba(30,66,53,.13)}
.moment-slide{position:absolute;inset:0;margin:0;visibility:hidden;pointer-events:none}
.moment-slide.is-current,.moment-slide.is-leaving{visibility:visible;z-index:1}
.moment-slide.is-current{z-index:2}
.moment-slide img{display:block;width:100%;height:calc(100% - 96px);object-fit:cover;object-position:var(--moment-position,center)}
.moment-slide::after{content:"";position:absolute;inset:auto 0 0;height:96px;background:#183d38;pointer-events:none}
.moment-slide figcaption{position:absolute;left:30px;right:30px;bottom:18px;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 20px;color:#fffdf8}
.moment-round{font:700 12px/1.5 var(--body);color:#ccebdd;grid-column:1/-1}
.moment-slide figcaption strong{font:700 clamp(19px,2.4vw,28px)/1.5 var(--display);text-wrap:balance;min-width:0}
.moment-date{font:500 14px/1.7 var(--body);align-self:end;color:#e5f0e8;white-space:nowrap;padding-bottom:3px}
.moment-indicators{position:absolute;z-index:3;top:25px;right:24px;display:flex;gap:6px;align-items:center}
.moment-indicators span{height:4px;width:clamp(8px,2vw,24px);border-radius:4px;background:#fffdf85c;overflow:hidden}
.moment-indicators span::after{content:"";display:block;height:100%;background:#fffdf8;transform:scaleX(0);transform-origin:left}
.moment-indicators .is-current::after{transform:scaleX(var(--moment-progress,0))}
.moments-stage:focus-visible{outline:3px solid #b47a2d;outline-offset:5px}
.moment-hit{position:absolute;z-index:4;top:0;bottom:0;width:50%;border:0;padding:0;background:transparent;cursor:pointer;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.moment-hit[data-moment-step="-1"]{left:0}
.moment-hit[data-moment-step="1"]{right:0}

.moment-hit:focus-visible{outline:3px solid #ffdc84;outline-offset:-6px;border-radius:12px}
.moment-hit svg{position:absolute;top:calc(50% - 16px);width:32px;height:32px;color:#fffdf8;opacity:0;transition:opacity .2s;filter:drop-shadow(0 2px 5px #15383299);pointer-events:none}
.moment-hit[data-moment-step="-1"] svg{left:20px}
.moment-hit[data-moment-step="1"] svg{right:20px}
.moment-hit:focus-visible svg,.moment-hit:active svg{opacity:1}
@media(hover:hover) and (pointer:fine){.moment-hit:hover svg{opacity:.8}}
.workshop-home #gallery + .quickbar{margin-top:12px;margin-bottom:10px}
@media(max-width:780px){.workshop-home #gallery{padding:18px 0 24px}.moments-heading{display:block;margin-bottom:15px}.moments-heading h2{font-size:24px}.moments-heading p{font-size:13px;margin-top:6px}.moments-stage{height:calc((100vw - 40px)*.6667 + 140px);border-radius:14px}.moment-slide figcaption{left:20px;right:20px;bottom:16px;grid-template-columns:minmax(0,1fr);gap:5px}.moment-slide figcaption strong{font-size:20px;line-height:1.55}.moment-round{font-size:11px}.moment-date{font-size:12px;padding:0}.moment-indicators{top:21px;right:16px}.moment-slide img{height:calc(100% - 140px);object-fit:contain;object-position:center}.moment-slide::after{height:140px}.workshop-home #gallery + .quickbar{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.moment-slide,.moment-hit svg{transition:none}.moment-indicators .is-current::after{transform:scaleX(1)}}

/* Preserve every participant in wide group photographs. */
.moment-group img{object-fit:contain}

/* Compact glass frame, echoing the site's light surfaces and gold accents. */
.workshop-home #gallery{max-width:900px;margin-inline:auto}
.moments-heading h2{font-size:clamp(23px,2.4vw,29px);color:#263446}
.moments-heading p{font-size:13px;color:#647080}
.moments-stage{height:430px;border:1px solid rgba(255,255,255,.92);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(235,242,252,.48));backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%);box-shadow:0 16px 42px #26344614,inset 0 1px 0 #fff,0 0 0 1px #b9c6d326}
.moment-slide{inset:10px}
.moment-slide img{height:calc(100% - 82px);border-radius:15px;background:#e6ebf1}
.moment-slide::after{display:none}
.moment-slide figcaption{left:14px;right:14px;bottom:8px;gap:2px 12px;color:#263446}
.moment-slide figcaption strong{font-size:clamp(17px,2vw,21px);line-height:1.5}
.moment-round{font-size:10px;letter-spacing:.04em;color:#826329}
.moment-date{font-size:12px;color:#626e7d}
.moment-indicators{top:27px;right:27px;gap:4px;padding:8px 10px;border:1px solid #ffffff80;border-radius:20px;background:#26344642;backdrop-filter:blur(12px)}
.moment-indicators span{width:clamp(7px,1.5vw,16px);height:3px}
.moment-indicators span::after{background:#ffe2a2}
.moment-hit{top:58px;bottom:92px}
.moment-hit svg{width:30px;height:30px;padding:5px;box-sizing:content-box;border:1px solid #ffffff8c;border-radius:50%;background:#26344640;backdrop-filter:blur(12px);filter:none}
.moment-play{position:absolute;top:24px;left:24px;z-index:5;padding:7px 12px;border:1px solid #ffffffa8;border-radius:20px;background:#ffffffd9;backdrop-filter:blur(12px);color:#263446;font:600 11px/1.5 var(--body);cursor:pointer}
.moment-play:focus-visible{outline:3px solid #b47a2d;outline-offset:3px}
@media(max-width:780px){.moments-stage{height:calc((100vw - 62px)*.6667 + 136px);border-radius:20px}.moment-slide img{height:calc(100% - 114px)}.moment-slide figcaption{left:10px;right:10px;bottom:7px;gap:3px}.moment-slide figcaption strong{font-size:17px;line-height:1.5}.moment-date{font-size:11px}.moment-round{font-size:10px}.moment-indicators{top:22px;right:20px;padding:7px 8px;gap:3px}.moment-play{top:20px;left:20px;font-size:10px;padding:5px 9px}.moment-hit{bottom:124px;top:50px}}
