.ps_scroll { opacity:0;transition:transform var(--ps-animation-duration,2000ms) cubic-bezier(.2,.6,.2,1),opacity var(--ps-animation-duration,2000ms) ease; }
.ps_left { transform:translateX(90%); }
.ps_right { transform:translateX(-90%); }
.ps_up { transform:translateY(90%); }
.ps_down { transform:translateY(-90%); }
.ps_up_left { transform:translate(90%,90%); }
.ps_up_right { transform:translate(-90%,90%); }
.ps_down_left { transform:translate(90%,-90%); }
.ps_down_right { transform:translate(-90%,-90%); }
.ps_rotatex { transform:rotateX(90deg); }
.ps_rotatey { transform:rotateY(90deg); }
.ps_rotatez { transform:rotateZ(180deg); }
.ps_scale { transform:scale(.01); }
.ps_zoom { transform:scale(.85); }
.ps_reveal { transform:scale(1.25);transform-origin:center center; }
.ps_stagger > * { opacity:0;transform:translateY(30px);transition:transform .7s ease,opacity .7s ease; }
.ps_wipe_left,.ps_wipe_right,.ps_wipe_up,.ps_wipe_down,.ps_wipe_diag { position:relative;overflow:hidden; }
.ps_wipe_left img,.ps_wipe_right img,.ps_wipe_up img,.ps_wipe_down img,.ps_wipe_diag img { display:block;width:100%;height:auto; }
.ps_wipe_left::before,.ps_wipe_right::before,.ps_wipe_up::before,.ps_wipe_down::before,.ps_wipe_diag::before { content:"";position:absolute;z-index:2;pointer-events:none;box-sizing:border-box; }
.ps_wipe_right::before { width:300%;height:100%;left:0;right:auto;background:linear-gradient(to right,transparent 0%,transparent 44%,#fff 56%,#fff 100%);transform:translateX(-66%);transition:transform var(--ps-animation-duration,2000ms) var(--ps-wipe-delay,0ms); }
.ps_wipe_left::before { width:300%;height:100%;left:auto;right:0;background:linear-gradient(to left,transparent 0%,transparent 44%,#fff 56%,#fff 100%);transform:translateX(66%);transition:transform var(--ps-animation-duration,2000ms) var(--ps-wipe-delay,0ms); }
.ps_wipe_up::before { height:300%;width:100%;bottom:0;top:auto;background:linear-gradient(to top,transparent 0%,transparent 44%,#fff 56%,#fff 100%);transform:translateY(66%);transition:transform var(--ps-animation-duration,2000ms) var(--ps-wipe-delay,0ms); }
.ps_wipe_down::before { height:300%;width:100%;top:0;bottom:auto;background:linear-gradient(to bottom,transparent 0%,transparent 44%,#fff 56%,#fff 100%);transform:translateY(-66%);transition:transform var(--ps-animation-duration,2000ms) var(--ps-wipe-delay,0ms); }
.ps_wipe_diag::before { width:400%;height:100%;left:0;right:auto;background:linear-gradient(45deg,transparent 0%,transparent 44%,#fff 56%,#fff 100%);transform:translateX(-75%);transition:transform var(--ps-animation-duration,2000ms) var(--ps-wipe-delay,0ms); }
.ps_wipe_diag.ps_active::before,.ps_wipe_right.ps_active::before,.ps_wipe_left.ps_active::before,.ps_wipe_up.ps_active::before,.ps_wipe_down.ps_active::before { transform:none; }
.ps_page_left,.ps_page_right,.ps_page_up,.ps_page_down { position:relative;display:inline-block;width:fit-content;height:fit-content;overflow:visible;perspective:1200px; }
.ps_page_left img,.ps_page_right img,.ps_page_up img,.ps_page_down img { display:block;width:auto;height:auto;max-width:100%;transform-style:preserve-3d;transition:transform var(--ps-page-duration,2200ms) cubic-bezier(.22,.61,.36,1),opacity var(--ps-page-opacity-duration,400ms) ease;backface-visibility:visible;opacity:0; }
.ps_page_left img { transform-origin:right center;transform:rotateY(82deg) translateZ(0); }
.ps_page_right img { transform-origin:left center;transform:rotateY(-82deg) translateZ(0); }
.ps_page_up img { transform-origin:center bottom;transform:rotateX(-82deg) translateZ(0); }
.ps_page_down img { transform-origin:center top;transform:rotateX(82deg) translateZ(0); }
.ps_page_left.ps_active img,.ps_page_right.ps_active img,.ps_page_up.ps_active img,.ps_page_down.ps_active img { transform:none;opacity:1; }
.ps_active { opacity:1 !important;transform:none; }
.ps_stretch { opacity:1;transform:scale(0,0);transform-origin:center center;transition:none !important; }
.ps_stretch.ps_active { animation:psStretchInner var(--ps-animation-duration,2000ms) linear both;will-change:transform; }
@keyframes psStretchInner { 
  0% {  transform:skew(  0deg,  0deg) scale(   0,  0 )  }
 50% {  transform:skew(-25deg,-25deg) scale(0.5 ,0.5 )  }
100% {  transform:skew(  0deg,  0deg) scale(1   ,1   )  }
}