.wc-blocks-footer-pattern{
    margin-top: 0 !important;
}

:where(.wp-site-blocks) > :last-child {
    margin-block-end: 0;
    margin-top: 0px !important;
}

/* PAGE 99 FULL PSYCHEDELIC RAINBOW TIE-DYE HERO */

.page-id-99 .wp-container-core-columns-is-layout-53aea8ef{
    position: relative;
    overflow: hidden;
    isolation: isolate;

    border-radius: 0 !important;

    margin-top: 0px !important;
    margin-bottom: 0px !important;

    padding-top: 40px !important;

    background-color: #ff006e !important;

    background-image:

        radial-gradient(circle at 10% 20%, #ff0000 0%, transparent 22%),

        radial-gradient(circle at 85% 15%, #00e1ff 0%, transparent 24%),

        radial-gradient(circle at 80% 80%, #ff9d00 0%, transparent 22%),

        radial-gradient(circle at 20% 78%, #7b2cff 0%, transparent 24%),

        radial-gradient(circle at 50% 45%, #00ff87 0%, transparent 30%),

        radial-gradient(circle at 65% 35%, #fff200 0%, transparent 18%),

        radial-gradient(circle at 35% 32%, #ff00d4 0%, transparent 20%),

        radial-gradient(circle at 68% 68%, #0077ff 0%, transparent 20%),

        linear-gradient(
            135deg,
            #ff003c 0%,
            #ff00aa 14%,
            #7b2cff 28%,
            #009dff 42%,
            #00ffcc 56%,
            #6dff00 68%,
            #ffe600 80%,
            #ff7b00 90%,
            #ff003c 100%
        ) !important;

    background-size: 700% 700% !important;

    animation: ppRainbowFlow 28s ease infinite;

    filter: saturate(1.45) contrast(1.08);
}

/* GIANT LIQUID COLOR GLOW */
.page-id-99 .wp-container-core-columns-is-layout-53aea8ef::before{
    content:"";
    position:absolute;
    inset:-22%;
    z-index:1;

    background:
        conic-gradient(
            from 0deg at 50% 50%,
            rgba(255,0,60,.40),
            rgba(255,0,170,.36),
            rgba(123,44,255,.34),
            rgba(0,157,255,.30),
            rgba(0,255,204,.28),
            rgba(109,255,0,.28),
            rgba(255,230,0,.26),
            rgba(255,123,0,.30),
            rgba(255,0,60,.40)
        );

    filter: blur(180px);

    opacity: 1;

    animation: ppAuroraRotate 36s linear infinite;
}

/* LIGHT FILM OVERLAY */
.page-id-99 .wp-container-core-columns-is-layout-53aea8ef::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.08),
            rgba(255,255,255,.02)
        );
}

/* KEEP CONTENT ABOVE EFFECTS */
.page-id-99 .wp-container-core-columns-is-layout-53aea8ef > *{
    position: relative;
    z-index: 5;
}

/* RAINBOW MOTION */
@keyframes ppRainbowFlow{

    0%{
        background-position: 0% 50%;
    }

    20%{
        background-position: 40% 100%;
    }

    40%{
        background-position: 100% 60%;
    }

    60%{
        background-position: 60% 0%;
    }

    80%{
        background-position: 20% 40%;
    }

    100%{
        background-position: 0% 50%;
    }
}

/* SLOW LIQUID ROTATION */
@keyframes ppAuroraRotate{

    0%{
        transform: rotate(0deg) scale(1);
    }

    25%{
        transform: rotate(90deg) scale(1.15);
    }

    50%{
        transform: rotate(180deg) scale(1.28);
    }

    75%{
        transform: rotate(270deg) scale(1.12);
    }

    100%{
        transform: rotate(360deg) scale(1);
    }
}

/* MORE VIBRANT POSITIVE PAINTING SHOP BACKGROUND */

.post-type-archive-product main{
    position: relative;
    overflow: hidden;

    background-color: #dfefff;

    background-image:

        radial-gradient(circle at 12% 18%, rgba(255, 0, 128, 0.22), transparent 22%),

        radial-gradient(circle at 84% 16%, rgba(0, 225, 255, 0.18), transparent 24%),

        radial-gradient(circle at 78% 82%, rgba(255, 196, 0, 0.18), transparent 22%),

        radial-gradient(circle at 22% 78%, rgba(123, 92, 255, 0.22), transparent 24%),

        radial-gradient(circle at 55% 45%, rgba(0, 255, 170, 0.14), transparent 30%),

        linear-gradient(
            135deg,
            #dfefff 0%,
            #ece2ff 24%,
            #dff9ff 48%,
            #efffe0 72%,
            #fff0e2 100%
        );

    background-size: 400% 400%;

    animation: subtleRainbowFlow 18s ease infinite;
}

/* STRONGER FLOATING COLOR BLOBS */
.post-type-archive-product main::before{
    content:"";
    position:absolute;
    inset:-12%;
    pointer-events:none;

    background:

        radial-gradient(circle at 20% 30%, rgba(255,0,128,.20), transparent 20%),

        radial-gradient(circle at 70% 25%, rgba(0,200,255,.18), transparent 22%),

        radial-gradient(circle at 60% 70%, rgba(0,255,170,.16), transparent 24%),

        radial-gradient(circle at 30% 80%, rgba(255,180,0,.16), transparent 22%),

        radial-gradient(circle at 85% 75%, rgba(140,90,255,.16), transparent 22%);

    filter: blur(90px);

    opacity: 1;

    animation: subtleBlobMove 26s ease-in-out infinite alternate;

    z-index: 1;
}

/* LIGHT COLOR FILM */
.post-type-archive-product main::after{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.12),
            rgba(255,255,255,.03)
        );

    pointer-events:none;

    z-index:2;
}

/* KEEP CONTENT ABOVE EFFECTS */
.post-type-archive-product main > *{
    position: relative;
    z-index: 5;
}

/* PRODUCT CARDS */
.post-type-archive-product ul.products li.product{
    background: rgba(255,255,255,.55);

    backdrop-filter: blur(12px);

    border-radius: 20px;

    padding: 18px;

    transition:
        transform .25s ease,
        box-shadow .25s ease;

    box-shadow:
        0 12px 35px rgba(0,0,0,.06);
}

.post-type-archive-product ul.products li.product:hover{
    transform: translateY(-5px);

    box-shadow:
        0 20px 45px rgba(0,0,0,.10);
}

/* BUTTONS */
.post-type-archive-product .button{
    border-radius: 999px !important;

    background:
        linear-gradient(
            135deg,
            #7b5cff,
            #00cfff
        ) !important;

    color:#fff !important;

    border:none !important;

    transition:.25s ease;
}

.post-type-archive-product .button:hover{
    transform: translateY(-2px);

    filter: brightness(1.08);
}

/* RAINBOW MOTION */
@keyframes subtleRainbowFlow{

    0%{
        background-position: 0% 50%;
    }

    50%{
        background-position: 100% 50%;
    }

    100%{
        background-position: 0% 50%;
    }
}

/* FLOATING COLOR BLOBS */
@keyframes subtleBlobMove{

    0%{
        transform: translate(0px, 0px) scale(1);
    }

    50%{
        transform: translate(25px, -12px) scale(1.1);
    }

    100%{
        transform: translate(-12px, 15px) scale(.95);
    }
}

/* REMOVE EXCESS GUTENBERG TOP SPACING */

.post-type-archive-product main{
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.post-type-archive-product .has-global-padding{
    padding-top: 0 !important;
}

.post-type-archive-product .is-layout-constrained > *:first-child{
    margin-block-start: 0 !important;
    margin-top: 0 !important;
}

/* ADD CONTROLLED SPACE BELOW NAV */

.post-type-archive-product .wp-block-query-title{
    margin-top: 36px !important;
    margin-bottom: 12px !important;
}

/* FORCE PRODUCT IMAGE BORDER + SHADOW */

.post-type-archive-product ul.products li.product a img,
.post-type-archive-product .wc-block-grid__product-image img,
.post-type-archive-product .wc-block-components-product-image img{
    border: 3px solid #000 !important;

    box-shadow:
        0 10px 24px rgba(0,0,0,.16) !important;

    border-radius: 8px !important;

    overflow: hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

/* HOVER EFFECT */

.post-type-archive-product ul.products li.product:hover img,
.post-type-archive-product .wc-block-grid__product:hover img,
.post-type-archive-product .wc-block-components-product-image:hover img{
    transform: translateY(-3px);

    box-shadow:
        0 18px 38px rgba(0,0,0,.22) !important;
}

/* FIX SHOP CONTENT BEING HIDDEN UNDER CUSTOM HEADER */

.post-type-archive-product main{
    padding-top: 40px !important;
}

/* OPTIONAL: EXTRA SPACING BELOW NAV */

.post-type-archive-product .wp-block-query-title{
    margin-top: 24px !important;
}

/* FOR FIXED CUSTOM HEADER */

.post-type-archive-product main{
    padding-top: 120px !important;
}

.pp-about-hero{
	    min-height: 90vh!important;
}
@media (max-width:768px){

    .pp-mobile-header{

        display:flex !important;

        align-items:center !important;

        justify-content:space-between !important;

        gap:16px !important;

        padding:20px !important;

        border-radius:24px !important;

        background:#ffffffee !important;
        min-width: 100% !important;
    }

    .pp-mobile-header img{

        width:80px !important;

        height:auto !important;
    }

}

@media (max-width:768px){

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    .pp-eyebrow,
    .pp-subheading,
    .pp-heading{

        text-align:center !important;
    }

    .pp-service-icon{
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .pp-badge-row{

        justify-content:center !important;

        align-items:center !important;
    }

    .pp-value-card,
    .pp-glass-card{

        text-align:center !important;
    }

    .row{
        justify-content:center !important;
    }

    .col-lg-6,
    .col-lg-5,
    .col-lg-7,
    .col-sm-6{

        text-align:center !important;
    }

    /* CONTACT LIST */

    .pp-contact-list{
        list-style:none !important;
        padding-left:0 !important;
        margin:0 auto !important;

        display:flex;
        flex-direction:column;
        align-items:center;
        gap:1rem;
    }

    .pp-contact-list li{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:.7rem;

        width:100%;

        text-align:center !important;
    }

    /* KEEP MOBILE NAV CENTERED */

    .wp-block-navigation__responsive-container-content ul{
        text-align:center !important;
    }

    .wp-block-navigation__responsive-container-content li{
        text-align:center !important;
    }

    .wp-block-navigation__responsive-container-content a{
        justify-content:center !important;
        text-align:center !important;
    }

}

@media (max-width:768px){

    .wp-block-navigation__responsive-container.is-menu-open{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open 
    .wp-block-navigation__responsive-container-content{
        width:100% !important;

        display:flex !important;
        flex-direction:column !important;

        align-items:center !important;
        justify-content:center !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open ul{
        width:100% !important;

        display:flex !important;
        flex-direction:column !important;

        align-items:center !important;
        justify-content:center !important;

        padding:0 !important;
        margin:0 auto !important;

        gap:1.25rem !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open li{
        width:100% !important;
        text-align:center !important;
        list-style:none !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open a{
        width:100% !important;

        display:flex !important;

        align-items:center !important;
        justify-content:center !important;

        text-align:center !important;
    }

}

@media (max-width:768px){

    .pp-service-icon,
    .service-icon,
    .feature-icon,
	.pp-stars,
    .wp-block-image,
    .wp-block-media-text__media{

        margin-left:auto !important;
        margin-right:auto !important;

        display:flex !important;

        justify-content:center !important;
    }

}

/* DESKTOP HEADER RESET */
@media (min-width:769px){

    .pp-mobile-header{
        position:relative !important;
        top:auto !important;
        margin:0 auto !important;
        padding:18px 32px !important;
        border-radius:0 !important;
        box-shadow:none !important;
        background:transparent !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;

        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:24px !important;
    }

    .pp-header-right{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-end !important;
        justify-content:center !important;
        gap:10px !important;
    }

    .pp-header-right .wp-block-navigation{
        justify-content:flex-end !important;
    }

    .pp-header-right .wp-block-navigation__container{
        flex-direction:row !important;
        justify-content:flex-end !important;
        align-items:center !important;
    }

    .wp-block-navigation__responsive-container-content a{
        width:auto !important;
        display:inline-flex !important;
        text-align:left !important;
    }
}