
.tp-photo-grid{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.5em}
.tp-photo-grid::after{content:"";flex-grow:999}
.tp-photo{margin:0;flex:calc(var(--r)*1) 1 calc(var(--r)*220px);aspect-ratio:var(--r);position:relative;overflow:hidden;border-radius:3px;background:#780002}
.tp-photo a{display:block;height:100%}
.tp-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease,opacity .3s}
.tp-photo a::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 0 #c9a54a;transition:box-shadow .3s;pointer-events:none}
.tp-photo a:hover img,.tp-photo a:focus-visible img{transform:scale(1.05);opacity:.9}
.tp-photo a:hover::after,.tp-photo a:focus-visible::after{box-shadow:inset 0 0 0 3px #c9a54a}
@media(max-width:600px){.tp-photo{flex-basis:calc(var(--r)*140px)}.tp-photo-grid{gap:5px}}
.tp-lb{border:0;padding:0;margin:0;width:100vw;height:100vh;max-width:none;max-height:none;background:rgba(15,2,2,.94);color:#f3e6c4;overflow:hidden}
.tp-lb::backdrop{background:transparent}
.tp-lb figure{margin:0;position:absolute;inset:50px 60px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tp-lb img{max-width:100%;max-height:calc(100% - 40px);object-fit:contain;box-shadow:0 10px 40px #000;transition:opacity .25s}
.tp-lb img.loading{opacity:.2}
.tp-lb figcaption{margin-top:12px;font:15px/1.4 Lato,sans-serif;text-align:center}
.tp-lb button{position:absolute;border:0;background:rgba(120,0,2,.75);color:#f3e6c4;cursor:pointer;font:28px/1 Arial;width:48px;height:48px;border-radius:50%;display:grid;place-items:center}
.tp-lb button:hover,.tp-lb button:focus-visible{background:#8b0000;outline:2px solid #c9a54a}
.tp-lb .lb-close{top:10px;right:10px}.tp-lb .lb-prev{left:8px;top:calc(50% - 24px)}.tp-lb .lb-next{right:8px;top:calc(50% - 24px)}
.tp-lb .lb-count{position:absolute;top:22px;left:20px;font:14px Lato,sans-serif;letter-spacing:.1em}
.tp-lb.single .lb-prev,.tp-lb.single .lb-next,.tp-lb.single .lb-count{display:none}
@media(max-width:600px){.tp-lb figure{inset:60px 6px 50px}.tp-lb .lb-prev,.tp-lb .lb-next{top:auto;bottom:6px}}
.tp-videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:1em 0}
.tp-video{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background:#000;overflow:hidden;border-radius:4px}
.tp-video img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.tp-video::before{content:"";position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px;border-radius:50%;background:rgba(139,0,0,.85);box-shadow:0 0 0 3px #c9a54a;z-index:1}
.tp-video::after{content:"";position:absolute;left:50%;top:50%;margin:-12px 0 0 -7px;border:12px solid transparent;border-left:20px solid #fff;z-index:2}
.tp-video span{position:absolute;left:0;right:0;bottom:0;padding:24px 12px 10px;background:linear-gradient(transparent,#000c);color:#fff;font:15px Lato,sans-serif;text-align:left}
.tp-video:hover img{transform:scale(1.04)}
.tp-lb .lb-frame{position:absolute;inset:60px 20px;margin:auto;max-width:1200px;aspect-ratio:16/9;max-height:calc(100vh - 120px);width:auto;height:auto}
.tp-lb .lb-frame iframe{width:100%;height:100%;border:0}
@media(prefers-reduced-motion:reduce){.tp-photo img,.tp-lb img,.tp-video img{transition:none!important;transform:none!important}}
