/* Victoria Bell Block Party: each invitation large, its painting film right under it */
.vbbp{--vbbp-ink:#23262b;--vbbp-soft:#6b6f76;--vbbp-line:#e3e1dc;--vbbp-mark:#2f5d50;--vbbp-w:min(880px,calc(100vw - 32px));
	color:var(--vbbp-ink);width:var(--vbbp-w);max-width:none!important;padding-bottom:40px}
html body .vbbp{margin-left:calc(50% - var(--vbbp-w) / 2)!important;margin-right:0!important}
.vbbp *{box-sizing:border-box}
.vbbp-page .wp-block-post-title{display:none}

.vbbp-head{text-align:center;margin:8px auto 28px;max-width:640px}
.vbbp-title{font-size:clamp(2rem,1.5rem + 2.2vw,3.2rem);font-weight:400;letter-spacing:.01em;line-height:1.1;margin:0 0 14px}
.vbbp-intro{color:var(--vbbp-soft);font-size:clamp(1rem,.95rem + .2vw,1.12rem);line-height:1.55;margin:0}

/* the years, always in reach */
.vbbp-years{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:5;display:flex;justify-content:center;gap:6px;flex-wrap:wrap;
	padding:10px 0;margin:0 0 8px;background:var(--wp--preset--color--base,#fff);background:color-mix(in srgb,var(--wp--preset--color--base,#fff) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--vbbp-line)}
.vbbp-years a{display:inline-block;padding:6px 14px;border-radius:999px;color:var(--vbbp-soft);text-decoration:none;font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:.03em;transition:background .2s,color .2s}
.vbbp-years a:hover{color:var(--vbbp-ink);background:#f1efea}
.vbbp-years a[aria-current="true"]{color:#fff;background:var(--vbbp-mark)}
.vbbp-years a:focus-visible{outline:2px solid var(--vbbp-mark);outline-offset:2px}

/* one year */
.vbbp-year{padding:56px 0 24px;scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 56px)}
.vbbp-year + .vbbp-year{border-top:1px solid var(--vbbp-line)}
.vbbp-yh{text-align:center;margin:0 0 22px}
.vbbp-yh h2{margin:0;font-weight:400;line-height:1.15;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.2rem)}
.vbbp-y{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.vbbp-name{color:var(--vbbp-soft)}
.vbbp-name::before{content:"·";margin:0 .35em 0 .1em;color:var(--vbbp-line)}
.vbbp-when{margin:6px 0 0;color:var(--vbbp-soft);font-size:15px}

.vbbp-art,.vbbp-film{margin:0 auto;padding:0}
.vbbp-art{display:flex;justify-content:center}
.vbbp-zoom{display:block;cursor:zoom-in;border-radius:4px;overflow:hidden;outline-offset:4px;
	box-shadow:0 1px 2px rgba(0,0,0,.06),0 14px 34px rgba(0,0,0,.12);background:#f6f5f2;max-width:100%}
.vbbp-zoom img{display:block;width:auto;height:auto;max-width:100%;max-height:min(88vh,1100px)}
.vbbp-zoom:focus-visible{outline:2px solid var(--vbbp-mark)}

/* the film sits right under the painting, the same size every time */
.vbbp-film{margin-top:22px;width:min(100%,520px)}
.vbbp-year.is-wide .vbbp-film,.vbbp-film.is-wide{width:min(100%,760px)}
.vbbp-film video{display:block;width:100%;height:auto;aspect-ratio:var(--vbbp-ratio,3/4);object-fit:contain;background:#16171a;border-radius:6px}
.vbbp-film figcaption{margin-top:9px;text-align:center;color:var(--vbbp-soft);font-size:14px;letter-spacing:.02em}
.vbbp-film figcaption span{font-variant-numeric:tabular-nums;opacity:.8;margin-left:.3em}

/* full size */
.vbbp-box{padding:0;border:0;width:100vw;height:100vh;max-width:none;max-height:none;background:rgba(18,19,21,.96)}
.vbbp-box::backdrop{background:rgba(18,19,21,.96)}
.vbbp-box img{position:absolute;inset:40px;margin:auto;max-width:calc(100% - 80px);max-height:calc(100% - 80px);object-fit:contain;cursor:zoom-out}
.vbbp-close{position:absolute;right:10px;top:8px;width:52px;height:52px;border:0;border-radius:50%;background:transparent;color:#ddd;font-size:36px;line-height:1;cursor:pointer}
.vbbp-close:hover{background:rgba(255,255,255,.08)}
.vbbp-close:focus-visible{outline:2px solid #fff}

@media (max-width:600px){
	.vbbp-year{padding-top:40px}
	.vbbp-years{gap:2px}
	.vbbp-years a{padding:6px 10px;font-size:14px}
	.vbbp-box img{inset:12px;max-width:calc(100% - 24px);max-height:calc(100% - 24px)}
}
@media (prefers-reduced-motion:reduce){.vbbp-years a{transition:none}}
