/* ==========================================================================
   NAP POPUP / MAGNIFIC POPUP INTEGRATION
   ========================================================================== */

html.nap-popup-open,
body.nap-popup-open {
    overflow: hidden;
}

/* Neutral baseline for inline popup content. Project styling belongs
   in the Child Theme. */
.nap-popup-content {
    position: relative;

    width: min(90vw, 900px);
    max-height: 90vh;

    margin: 40px auto;
    padding: 24px;

    overflow: auto;

    background: #ffffff;
}

/* --------------------------------------------------------------------------
   Default: Zoom in
   -------------------------------------------------------------------------- */
.mfp-zoom-in .mfp-with-anim,
.mfp-zoom-in .mfp-content {
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.2s ease-in-out;
}

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    transition: all 0.3s ease-out;
}

.mfp-zoom-in.mfp-ready .mfp-with-anim,
.mfp-zoom-in.mfp-ready .mfp-content {
    opacity: 1;
    transform: scale(1);
}

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-zoom-in.mfp-removing .mfp-with-anim,
.mfp-zoom-in.mfp-removing .mfp-content {
    opacity: 0;
    transform: scale(0.8);
}

.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0;
}

/* --------------------------------------------------------------------------
   Newspaper
   -------------------------------------------------------------------------- */
.mfp-newspaper .mfp-with-anim,
.mfp-newspaper .mfp-content {
    opacity: 0;
    transform: scale(0) rotate(500deg);
    transition: all 0.5s;
}

.mfp-newspaper.mfp-bg {
    opacity: 0;
    transition: all 0.5s;
}

.mfp-newspaper.mfp-ready .mfp-with-anim,
.mfp-newspaper.mfp-ready .mfp-content {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

.mfp-newspaper.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-newspaper.mfp-removing .mfp-with-anim,
.mfp-newspaper.mfp-removing .mfp-content {
    opacity: 0;
    transform: scale(0) rotate(500deg);
}

.mfp-newspaper.mfp-removing.mfp-bg {
    opacity: 0;
}

/* --------------------------------------------------------------------------
   Move horizontal
   -------------------------------------------------------------------------- */
.mfp-move-horizontal .mfp-with-anim,
.mfp-move-horizontal .mfp-content {
    opacity: 0;
    transform: translateX(-50px);
    transition: all 0.3s;
}

.mfp-move-horizontal.mfp-bg {
    opacity: 0;
    transition: all 0.3s;
}

.mfp-move-horizontal.mfp-ready .mfp-with-anim,
.mfp-move-horizontal.mfp-ready .mfp-content {
    opacity: 1;
    transform: translateX(0);
}

.mfp-move-horizontal.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-move-horizontal.mfp-removing .mfp-with-anim,
.mfp-move-horizontal.mfp-removing .mfp-content {
    opacity: 0;
    transform: translateX(50px);
}

.mfp-move-horizontal.mfp-removing.mfp-bg {
    opacity: 0;
}

/* --------------------------------------------------------------------------
   Move from top
   -------------------------------------------------------------------------- */
.mfp-move-from-top .mfp-content {
    vertical-align: top;
}

.mfp-move-from-top .mfp-with-anim,
.mfp-move-from-top .mfp-content {
    opacity: 0;
    transform: translateY(-100px);
    transition: all 0.2s;
}

.mfp-move-from-top.mfp-bg {
    opacity: 0;
    transition: all 0.2s;
}

.mfp-move-from-top.mfp-ready .mfp-with-anim,
.mfp-move-from-top.mfp-ready .mfp-content {
    opacity: 1;
    transform: translateY(0);
}

.mfp-move-from-top.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-move-from-top.mfp-removing .mfp-with-anim,
.mfp-move-from-top.mfp-removing .mfp-content {
    opacity: 0;
    transform: translateY(-50px);
}

.mfp-move-from-top.mfp-removing.mfp-bg {
    opacity: 0;
}

/* --------------------------------------------------------------------------
   3D unfold
   -------------------------------------------------------------------------- */
.mfp-3d-unfold .mfp-content {
    perspective: 2000px;
}

.mfp-3d-unfold .mfp-with-anim,
.mfp-3d-unfold .mfp-content {
    opacity: 0;
    transform: rotateY(-60deg);
    transform-style: preserve-3d;
    transition: all 0.3s ease-in-out;
}

.mfp-3d-unfold.mfp-bg {
    opacity: 0;
    transition: all 0.5s;
}

.mfp-3d-unfold.mfp-ready .mfp-with-anim,
.mfp-3d-unfold.mfp-ready .mfp-content {
    opacity: 1;
    transform: rotateY(0deg);
}

.mfp-3d-unfold.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-3d-unfold.mfp-removing .mfp-with-anim,
.mfp-3d-unfold.mfp-removing .mfp-content {
    opacity: 0;
    transform: rotateY(60deg);
}

.mfp-3d-unfold.mfp-removing.mfp-bg {
    opacity: 0;
}

/* --------------------------------------------------------------------------
   Zoom out
   -------------------------------------------------------------------------- */
.mfp-zoom-out .mfp-with-anim,
.mfp-zoom-out .mfp-content {
    opacity: 0;
    transform: scale(1.3);
    transition: all 0.3s ease-in-out;
}

.mfp-zoom-out.mfp-bg {
    opacity: 0;
    transition: all 0.3s ease-out;
}

.mfp-zoom-out.mfp-ready .mfp-with-anim,
.mfp-zoom-out.mfp-ready .mfp-content {
    opacity: 1;
    transform: scale(1);
}

.mfp-zoom-out.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-zoom-out.mfp-removing .mfp-with-anim,
.mfp-zoom-out.mfp-removing .mfp-content {
    opacity: 0;
    transform: scale(1.3);
}

.mfp-zoom-out.mfp-removing.mfp-bg {
    opacity: 0;
}
