.tp-root{--tp-card-w:190px;--tp-ease:cubic-bezier(.2, .7, .2, 1);opacity:0;width:100%;transition:opacity .8s var(--tp-ease), transform .8s var(--tp-ease);transform:translateY(16px)}.tp-root.tp-ready{opacity:1;transform:none}.tp-stage{width:100%;height:calc(var(--tp-card-w) * 16 / 9 + 2rem);perspective:1600px;outline:none;position:relative;overflow:hidden}.tp-stage:focus-visible{outline:3px solid var(--brand);outline-offset:4px;border-radius:12px}.tp-card{width:var(--tp-card-w);aspect-ratio:9/16;border:1px solid var(--border);cursor:pointer;will-change:transform, opacity;transition:transform .75s var(--tp-ease), opacity .75s var(--tp-ease);background:#111;border-radius:12px;padding:0;position:absolute;top:50%;left:50%;overflow:hidden}.tp-card img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.tp-card.is-selected{cursor:zoom-in;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand), 0 30px 70px -24px #000000bf}.tp-card:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.tp-controls{justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.tp-selected{text-align:center;min-width:0;color:var(--muted);font-size:.95rem}.tp-selected strong{color:var(--foreground)}.tp-arrow{border:1px solid var(--border);width:2.6rem;height:2.6rem;color:var(--foreground);cursor:pointer;background:#ffffff0f;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:background-color .2s,transform 50ms;display:inline-flex}.tp-arrow:hover{background:#ffffff1f}.tp-arrow:active{transform:translateY(1px)}.tp-arrow:focus-visible{outline:3px solid var(--brand);outline-offset:2px}@media (min-width:1024px){.tp-root{--tp-card-w:210px}}.tp-lightbox{z-index:100;-webkit-backdrop-filter:blur(6px);animation:tp-lb-fade .3s var(--tp-ease) both;background:#080808d1;align-items:stretch;gap:2rem;padding:2rem;display:flex;position:fixed;inset:0}@keyframes tp-lb-fade{0%{opacity:0}to{opacity:1}}.tp-lightbox-panel{max-width:34rem;color:var(--foreground);animation:tp-lb-rise .62s var(--tp-ease) .12s both;flex:1 1 0;align-self:center;padding:0 1rem 0 2rem}@keyframes tp-lb-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.tp-lightbox-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--brand);margin:0 0 .9rem;font-size:.72rem}.tp-lightbox-title{font-family:var(--font-serif), "Source Serif 4", Georgia, serif;letter-spacing:-.01em;color:var(--foreground);margin:0 0 1.1rem;font-size:clamp(2rem,4vw,3.25rem);font-weight:400;line-height:1.05}.tp-lightbox-body{max-width:30rem;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.6}.tp-lightbox-stage{flex:none;justify-content:flex-end;align-items:center;height:100%;display:flex}.tp-lightbox-stage img{aspect-ratio:9/16;object-fit:cover;border:1px solid var(--border);width:auto;max-width:55vw;height:100%;animation:tp-lb-zoom .62s var(--tp-ease) both;border-radius:12px;box-shadow:0 30px 80px -30px #000c}@keyframes tp-lb-zoom{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}.tp-lightbox-close{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);cursor:pointer;z-index:2;background:#00000080;border-radius:999px;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;display:inline-flex;position:fixed;top:1.4rem;right:1.4rem}.tp-lightbox-close:hover{background:#000000b3}.tp-lightbox-close:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.tp-lightbox-close span{background:#fff;border-radius:2px;width:15px;height:1.5px;position:absolute}.tp-lightbox-close span:first-child{transform:rotate(45deg)}.tp-lightbox-close span:nth-child(2){transform:rotate(-45deg)}.tp-lightbox-nav{gap:.75rem;margin-top:2rem;display:inline-flex}@media (max-width:820px){.tp-lightbox{flex-direction:column-reverse;gap:1.25rem;padding:1.25rem;overflow-y:auto}.tp-lightbox-stage{justify-content:center;height:auto}.tp-lightbox-stage img{width:auto;max-width:100%;height:auto;max-height:58vh}.tp-lightbox-panel{text-align:center;align-self:stretch;max-width:none;padding:0 .5rem 1.5rem}.tp-lightbox-body{margin-inline:auto}}@media (prefers-reduced-motion:reduce){.tp-root,.tp-card{transition:none}.tp-root{opacity:1;transform:none}.tp-lightbox,.tp-lightbox-panel,.tp-lightbox-stage img{animation:none}}
