/* Shared Shopify header behavior previously kept in Elementor Header #888. */
header[data-elementor-id="888"]:not(.pmp-sticky-inner),
.pmp-shopify-header-sticky-shell {
    position: sticky !important;
    top: calc(-1 * var(--pmp-announcement-height, 37px));
    z-index: 1000 !important;
    margin-bottom: 24px !important;
}
header[data-elementor-id="888"].pmp-sticky-inner {
    position: static !important;
    top: auto !important;
    margin-bottom: 0 !important;
}
body.admin-bar header[data-elementor-id="888"]:not(.pmp-sticky-inner),
body.admin-bar .pmp-shopify-header-sticky-shell {
    top: calc(var(--wp-admin--admin-bar--height, 32px) - var(--pmp-announcement-height, 37px));
}

/* Reusable Elementor Posts widget mobile carousel. Add this widget CSS class:
   pmp-mobile-post-carousel */
@media (max-width: 767px) {
    .pmp-mobile-post-carousel .elementor-widget-container::before {
        content: "Swipe for more  →";
        display: block;
        color: #536780;
        font-size: 12px;
        font-weight: 500;
        text-align: right;
        margin: 0 3px 9px;
    }
    .pmp-mobile-post-carousel .elementor-posts-container {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding-left: 2px;
        gap: 14px !important;
        padding: 2px 15% 12px 2px;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        scrollbar-width: thin;
        scrollbar-color: #aab8ca transparent;
    }
    .pmp-mobile-post-carousel .elementor-posts-container > .elementor-post {
        flex: 0 0 85% !important;
        width: 85% !important;
        min-width: 0 !important;
        scroll-snap-align: start;
    }
    .pmp-mobile-post-carousel .elementor-posts-container .elementor-post__card {
        height: 100%;
    }
    .pmp-mobile-post-carousel .elementor-posts-container::-webkit-scrollbar {
        height: 3px;
    }
    .pmp-mobile-post-carousel .elementor-posts-container::-webkit-scrollbar-thumb {
        background: #aab8ca;
        border-radius: 4px;
    }
}

/* Existing Elementor Search widget cosmetics, consolidated from four templates. */
:is(.elementor-785 .elementor-element.elementor-element-ee0493d,
    .elementor-785 .elementor-element.elementor-element-f23fb66,
    .elementor-908 .elementor-element.elementor-element-6aec4c5,
    .elementor-908 .elementor-element.elementor-element-623c369,
    .elementor-984 .elementor-element.elementor-element-e64fa53,
    .elementor-984 .elementor-element.elementor-element-62242f3,
    .elementor-1065 .elementor-element.elementor-element-90b1634,
    .elementor-1065 .elementor-element.elementor-element-4253f85)
:is(.e-search-input, .e-search-input::placeholder) {
    font-family: Poppins, sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
}
:is(.elementor-785 .elementor-element.elementor-element-ee0493d,
    .elementor-785 .elementor-element.elementor-element-f23fb66,
    .elementor-908 .elementor-element.elementor-element-6aec4c5,
    .elementor-908 .elementor-element.elementor-element-623c369,
    .elementor-984 .elementor-element.elementor-element-e64fa53,
    .elementor-984 .elementor-element.elementor-element-62242f3,
    .elementor-1065 .elementor-element.elementor-element-90b1634,
    .elementor-1065 .elementor-element.elementor-element-4253f85)
.e-search-input::placeholder { color: #61717B; opacity: 1; }
:is(.elementor-785 .elementor-element.elementor-element-ee0493d,
    .elementor-785 .elementor-element.elementor-element-f23fb66,
    .elementor-908 .elementor-element.elementor-element-6aec4c5,
    .elementor-908 .elementor-element.elementor-element-623c369,
    .elementor-984 .elementor-element.elementor-element-e64fa53,
    .elementor-984 .elementor-element.elementor-element-62242f3,
    .elementor-1065 .elementor-element.elementor-element-90b1634,
    .elementor-1065 .elementor-element.elementor-element-4253f85)
.e-search-label svg { color: #536B78; }
:is(.elementor-785 .elementor-element.elementor-element-ee0493d,
    .elementor-785 .elementor-element.elementor-element-f23fb66,
    .elementor-908 .elementor-element.elementor-element-6aec4c5,
    .elementor-908 .elementor-element.elementor-element-623c369,
    .elementor-984 .elementor-element.elementor-element-e64fa53,
    .elementor-984 .elementor-element.elementor-element-62242f3,
    .elementor-1065 .elementor-element.elementor-element-90b1634,
    .elementor-1065 .elementor-element.elementor-element-4253f85)
.e-search-form:focus-within { box-shadow: 0 0 0 1px #94B0B2; }

/* Existing mobile 'Browse categories' menus, consolidated from four templates. */
@media (max-width: 1024px) {
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9) { margin-bottom: 0; }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-menu-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 42px;
        padding: 9px 13px;
        background: #F8FAFB;
        color: #344653;
        border: 1px solid #CBD5DA;
        border-radius: 4px;
    }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    :is(.elementor-menu-toggle:hover, .elementor-menu-toggle:focus-visible) {
        border-color: #94B0B2;
        background: #F3F6F7;
    }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-menu-toggle::before {
        content: "Browse categories";
        font: 400 14px Poppins, sans-serif;
    }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-menu-toggle > svg { display: none !important; }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-menu-toggle::after {
        content: "";
        width: 8px;
        height: 8px;
        margin-right: 4px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: rotate(45deg);
    }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-menu-toggle.elementor-active::after { transform: rotate(225deg); }
    :is(.elementor-785 .elementor-element.elementor-element-27b7d11,
        .elementor-908 .elementor-element.elementor-element-2a43f30,
        .elementor-984 .elementor-element.elementor-element-450ed80,
        .elementor-1065 .elementor-element.elementor-element-9a532d9)
    .elementor-nav-menu--dropdown {
        margin-top: 5px;
        background: #fff;
        border: 1px solid #DDE5E8;
    }
}

/* Footer's Shopify product carousel CTA styling, previously in Elementor Footer. */
.elementor-948 .elementor-element.elementor-element-194648a .prodshow-cta-button {
    background-color: #8e63cc !important;
    color: #ffffff !important;
}
.elementor-948 .elementor-element.elementor-element-194648a :is(.prodshow-cta-button:hover, .prodshow-cta-button:focus) {
    background-color: #000000 !important;
    color: #ffffff !important;
}
.elementor-948 .elementor-element.elementor-element-194648a :is(button.prodshow-carousel-btn, button.prodshow-carousel-btn:hover, button.prodshow-carousel-btn:focus) {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: 40px;
    height: 40px;
}

/* Existing Additional CSS; preserve the original behavior while consolidating. */
button.age-gate__submit.age-gate__submit--no { background-color: #999; }
.single-post .wp-block-post-featured-image img {
    display: block;
    width: 100%;
    height: auto !important;
    max-height: none !important;
    object-fit: initial !important;
    padding-bottom: 15px;
}
h3.prodshow-product-title { font-size: 18px !important; }
.prodshow-header { justify-content: flex-start !important; }
