
/* A single seamless photo at rest; only the featured gallery tile is animated. */
/* v347: prevent image replacement and 3D compositor from influencing grid sizing. */
.tpg-grid{align-items:stretch;grid-auto-rows:clamp(125px,15vw,260px)}
.tpg-tile.tpg-feature-flip{isolation:isolate;perspective:1000px;overflow:hidden;contain:layout size paint;align-self:stretch;justify-self:stretch;height:100%;width:100%;box-sizing:border-box}
.tpg-feature-flip .tpg-feature-base{display:block;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center!important;transition:none!important}
.tpg-feature-flip .tpg-flip-layer{width:100%;height:100%;box-sizing:border-box}
@media(max-width:700px){.tpg-grid{grid-auto-rows:clamp(130px,27vw,220px)}}
@media(max-width:540px){.tpg-grid{grid-auto-rows:clamp(115px,32vw,180px)}}
.tpg-feature-flip .tpg-feature-base{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none!important}
.tpg-feature-flip .tpg-flip-layer{position:absolute;inset:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));pointer-events:none;z-index:2;perspective:1100px}
.tpg-feature-flip .tpg-flip-cell{position:relative;min-width:0;min-height:0;transform-style:preserve-3d;will-change:transform}
.tpg-feature-flip .tpg-flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-repeat:no-repeat;background-size:800% 600%;border:0}
.tpg-feature-flip .tpg-flip-back{transform:rotateY(180deg)}
.tpg-feature-flip .tpg-flip-cell.tpg-flip-go{animation:tpg-turn-v348 var(--turn-duration,850ms) cubic-bezier(.24,.68,.25,1) var(--turn-delay,0ms) both}
@keyframes tpg-turn-v348{from{transform:rotateY(0deg)}to{transform:rotateY(180deg)}}
@media(prefers-reduced-motion:reduce){.tpg-feature-flip .tpg-flip-layer{display:none}}
