/* Last-Modified: Sat, 1 Jan 2000 10:00:30 GMT [ver: ] */
/* Current-Time:Tue, 13 Oct 2026 09:51:19 -0500*/
:root {
  /* ==================================================================
       CORE PALETTE – Change only these 12 lines for a full re-theme
       ================================================================== */
  --color-primary:          #6B2C3E;  /* Dark Plum – main brand color */
  --color-primary-hover:    #8A3A52;  /* Muted Rose – most hover states */
  --color-primary-dark:     #722F43;  /* Slightly darker plum (button borders etc.) */

  --color-accent:           #2A9D8F;  /* Vibrant Teal – lines, headings, active states */
  --color-secondary:        #97DDD4;  /* Pale Teal – nav text, footer bg, inputs */
  --color-secondary-light:  #F4E7D8;  /* Light Tan – button text, focus states */

  --color-text:             #2B2B2B;  /* Main body text */
  --color-text-soft:        #777777;  /* De-emphasized / placeholder text */

  --color-bg:               #FDFCFD;  /* Page / content background (off-white) */
  --color-surface:          #FFFFFF;  /* Pure white surfaces (cards, images) */

  --color-footer-bg:        #97DDD4;  /* Same as secondary – kept for clarity */
  --color-button-hover-bg:  #2A9D8F;  /* Same as accent – kept for clarity */

  /* Custom one-off colors (these are intentionally not part of the theme) */
  --custom-sold-color:         #c90909;
  --custom-sold-hover:         #a00707;
  --custom-available-color:    #009e49;
  --custom-available-hover:    #007a38;
  --custom-prints-color:       #007acc;
  --custom-prints-hover:       #0056a3;
  --custom-prints-light:       #01d862;
  --custom-prints-lighter:     #00c15a;
  --custom-prints-blue-light:  #0099ff;

  /* ==================================================================
       SEMANTIC VARIABLES – never touch these again when re-theming
       ================================================================== */

  /* Main Styles */
  --page-background:                     var(--color-bg);
  --site-heading:                        var(--color-primary);
  --accent-color:                        var(--color-primary);
  --site-heading-on-background:          var(--color-primary);
  --background-link:                     var(--color-primary);
  --background-link-hover:               var(--color-primary-hover);

  /* Header Styles */
  --header-background:                   var(--color-primary);
  --header-text:                         var(--color-secondary);
  --header-link:                         var(--color-secondary);
  --header-link-hover:                   var(--color-accent);

  /* Content Styles */
  --content-background:                  var(--color-bg);
  --content-border:                      var(--color-accent);
  --content-line:                        var(--color-accent);
  --content-heading:                     var(--color-accent);
  --content-heading-minor:               var(--color-text);
  --content-text:                        var(--color-text);
  --content-text-deemphasized:           var(--color-text-soft);
  --content-text-emphasized:             var(--color-primary);
  --content-link:                        var(--color-primary);
  --content-link-visited:                var(--color-primary);
  --content-link-hover:                  var(--color-primary-hover);
  --content-shaded-background:           var(--color-bg);
  --content-highlight-background:        var(--color-secondary);
  --content-highlight-text:              var(--color-text);

  /* Navigation Styles */
  --nav-background:                      var(--color-primary);
  --nav-line:                            var(--color-accent);
  --nav-text:                            var(--color-secondary);
  --nav-link:                            var(--color-secondary);
  --nav-link-visited:                    var(--color-secondary);
  --nav-link-hover:                      var(--color-accent);
  --nav-link-selected:                   var(--color-secondary);
  --nav-alt-link:                        var(--color-secondary);
  --nav-alt-link-hover:                  var(--color-accent);
  --nav-alt-link-selected:               var(--color-primary-hover);

  /* Image Asset Styles */
  --asset-background:                    var(--color-surface);
  --asset-foreground:                    var(--color-text);
  --asset-background-hover:              var(--color-accent);
  --asset-foreground-hover:              var(--color-secondary-light);
  --asset-soft-background:               var(--color-bg);
  --asset-soft-foreground:               var(--color-text-soft);

  /* Button Styles */
  --button-background:                   var(--color-primary-hover);
  --button-text:                         var(--color-secondary-light);
  --button-border:                       var(--color-primary-dark);
  --button-background-hover:             var(--color-accent);
  --button-text-hover:                   var(--color-secondary-light);
  --button-border-hover:                 var(--color-secondary);

  /* Form Styles */
  --input-background:                    var(--color-secondary);
  --input-text:                          var(--color-text);
  --input-border:                        var(--color-accent);
  --input-background-focus:              var(--color-secondary-light);
  --input-text-focus:                       var(--color-text);
  --input-border-focus:                  var(--color-accent);

  /* Footer Styles */
  --footer-background:                   var(--color-secondary);
  --footer-text:                         var(--color-primary);
  --footer-link:                         var(--color-accent);
  --footer-link-hover:                   var(--color-primary-hover);

  /* Pagination Styles */
  --pagination-background:               var(--color-bg);
  --pagination-text:                     var(--color-text);
  --pagination-border:                   var(--color-accent);
  --pagination-background-hover:         var(--color-secondary);
  --pagination-text-hover:               var(--color-text);
  --pagination-border-hover:             var(--color-primary);
  --pagination-background-current:       var(--color-primary);
  --pagination-text-current:             var(--color-secondary);
  --pagination-border-current:           var(--color-primary);

  /* Shadow RGB values (unchanged) */
  --shadow-rgb:         0, 0, 0;
  --shadow-blue-rgb:    0, 153, 255;
  --shadow-red-rgb:     201, 9, 9;
  --shadow-green-rgb:   0, 255, 100;
}

/** ==================================================================
     *   1. BASE LAYOUT FOR THUMBNAILS (Gallery Grid)
     *   ================================================================== **/
    .faso-works-section-thumbnail-item {
        /* display: flex; -- Removed to prevent conflict with theme's JS layout */
        flex-direction: column;
        align-items: flex-start;
    }
.faso-works-expanded-section-info {
    background-color:rgba(0, 0, 0, 0) !important;

}
    /* Set the visual order for all screen sizes */
    .faso-works-data-linktodetail::before { order: 1; } /* Ribbon */
    .faso-works-data-linktodetail .item-box { order: 2; } /* Image */
    .faso-works-data-linktodetail .item-caption { order: 3; } /* Caption */

    /* Desktop: Hide caption by default, show on hover */
    .faso-works-data-linktodetail .item-caption {
        opacity: 0;
     }

/** ==================================================================
     *   2. TOP RIBBON (default SOLD – hidden until needed)
     *   ================================================================== **/
    .faso-works-data-linktodetail::before {
        content: "SOLD";
        margin-bottom: 8px;
        padding: 5px 14px;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: 0.8px;
        color: var(--asset-background);
        background: var(--custom-sold-color);
        border-radius: 5px;
        box-shadow: 3px 3px 10px rgba(var(--shadow-rgb), 0.25);
        align-self: flex-start;
        opacity: 1;
        transition: all 0.3s ease;
    }


    /** ==================================================================
     *   4. ALL “ORIGINAL NOT AVAILABLE” STATUSES &#8594; Show SOLD + Prints ribbons
     *   ================================================================== **/
    .faso-works-data-linktodetail:has(img[data-src*="sold=Sold" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Sold=Sold" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Private Collection" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Museum Collection" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Government Collection" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Corporate Collection" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Not For Sale" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="On Hold" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Donated" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Through Gallery" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Through Museum" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Destroyed" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Lost" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Stolen" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Out of Stock" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Gifted" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Commission" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Ephemeral" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Prints Only" i])::before,
    .cheryl-sold::before,
    .faso-workszoom-data-availibility.cheryl-sold::before,
    .faso-works-data-linktodetail:has(img[data-src*="Prints Only" i]):hover::before,
    .cheryl-prints-only:hover::before {
            content: "SOLD";
            background: var(--custom-sold-color);
            opacity: 1;
    }

    /* Ensure detail page SOLD has proper font size and styling */
    .faso-workszoom-data-availibility.cheryl-sold::before {
        font-size: 14px !important;
        content: "SOLD" !important;
        background: var(--custom-sold-color) !important;
        opacity: 1 !important;
        color: var(--asset-background) !important;
        padding: 12px 22px !important;
        border-radius: 5px !important;
        display: inline-block !important;
    }

    /** ==================================================================
     *   5. HOVER EFFECTS – SOLD / NOT AVAILABLE (top ribbon)
     *   ================================================================== **/
    .faso-works-data-linktodetail:has(img[data-src*="sold=Sold" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Sold=Sold" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Private Collection" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Museum Collection" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Government Collection" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Corporate Collection" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Not For Sale" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="On Hold" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Donated" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Through Gallery" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Through Museum" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Destroyed" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Lost" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Stolen" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Out of Stock" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Gifted" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Commission" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Ephemeral" i]):hover::before,
    .cheryl-sold:hover::before,
    .faso-workszoom-data-availibility.cheryl-sold::before,
    .faso-works-data-linktodetail:has(img[data-src*="Prints Only" i]):hover::before,
    .cheryl-prints-only:hover::before {
        animation: buyPrintsSOLDMorph 10s ease-in-out 0s 3; /* 3x then stop or use infinite*/
    }

    /* Detail page SOLD - infinite animation (no hover on detail pages) */
    .faso-workszoom-data-availibility.cheryl-sold::before {
        animation: buyPrintsSOLDMorph 10s ease-in-out infinite;
    }


    /** ==================================================================
     *   6. ORIGINAL AVAILABLE &#8594; Green “BUY NOW” (hide Prints ribbon)
     *   ================================================================== **/
    .faso-works-data-linktodetail:has(img[data-src*="sold=Available" i])::before,
    .faso-works-data-linktodetail:has(img[data-src*="Sold=Available" i])::before,
    .cheryl-available::before {
        content: "BUY NOW!";
        opacity: 1;
        background: var(--custom-available-color);
    }



    /** ==================================================================
     *   7. BUY NOW HOVER EFFECTS (gallery thumbnails)
     *   ================================================================== **/
    .faso-works-data-linktodetail:has(img[data-src*="sold=Available" i]):hover::before,
    .faso-works-data-linktodetail:has(img[data-src*="Sold=Available" i]):hover::before,
    .cheryl-available:hover::before {
        transform: none !important;
        translate: none !important;
        animation: buyNowMorph 10s ease-in-out 0s 3; /* delay included */
    }


    /** ==================================================================
     *   8. OPTIONAL CUSTOM STATUS
     *   ================================================================== **/
/*    .faso-works-data-linktodetail:has(img[data-src*="sold=YOURTEXT" i])::before {
        content: "TEXT YOU WANT TO DISPLAY";
        background: var(--custom-available-color) !important;
        opacity: 0.98;
    }
*/

    /** ==================================================================
     *   9. DETAIL PAGE (workszoom) – SOLD items only
     *   Only show SOLD ribbon on detail pages
     *   Available items use FASO's default "ADD TO CART" functionality
     *   ================================================================== **/

    /* Hide the "Availability:" label for SOLD items only */
    .faso-workszoom-data-availibility.cheryl-sold:first-of-type {
        display: none !important;
    }

    /* Base styling for SOLD detail page button (last span) */
    .faso-workszoom-data-availibility.cheryl-sold {
        display: inline-block !important;
        padding: 0 !important;
        margin: 8px 0 !important;
        font-size: 0 !important; /* Hide original text */
        font-weight: 900 !important;
        letter-spacing: 0.8px !important;
        color: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        text-transform: uppercase !important;
        border: none !important;
        background: transparent !important;
    }

    /* SOLD ribbon styling on detail pages */
    .faso-workszoom-data-availibility.cheryl-sold::before {
        font-size: 14px !important;
        display: inline-block !important;
        box-shadow: 3px 3px 10px rgba(var(--shadow-rgb), 0.25) !important;
    }

    /** ==================================================================
     *   10. DETAIL PAGE BUTTONS – Style ADD TO CART and VIEW AVAILABLE PRINTS
     *   ================================================================== **/

    /* ADD TO CART button - Green */
    .faso-contact-input-submit,
    .cheryl-btn-add-to-cart {
        background: var(--custom-available-color) !important;
        border-color: var(--custom-available-color) !important;
        color: var(--asset-background) !important;
        padding: 12px 24px !important;
        font-weight: 700 !important;
        border-radius: 5px !important;
        cursor: pointer !important;
        font-size: 14px !important;
    }

    .faso-contact-input-submit:hover,
    .cheryl-btn-add-to-cart:hover {
        background: var(--custom-available-hover) !important;
        border-color: var(--custom-available-hover) !important;
    }

    /* VIEW AVAILABLE PRINTS button - Blue */
    .cheryl-btn-view-prints {
        background: var(--custom-prints-color) !important;
        border-color: var(--custom-prints-color) !important;
        color: var(--asset-background) !important;
    }

    .cheryl-btn-view-prints:hover {
        background: var(--custom-prints-hover) !important;
        border-color: var(--custom-prints-hover) !important;
    }

    /** ==================================================================
     *   11. DETAIL PAGE PRICE BOX – Remove gray background and style price
     *   ================================================================== **/

    /* Remove gray background from price box */
    .price-box,
    .box.faso-art-unframed-show {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    /* Style the price text - darker color */
    .faso-workszoom-data-retailprice {
        color: var(--content-text) !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        display: block !important;
        margin: 20px 0 !important;
    }

    .works-price-currency-name {
        font-size: 14px !important;
        margin-left: 4px !important;
    }

    /** ==================================================================
     *   12. GALLERY INFO – Hide comma from address
     *   ================================================================== **/

    /* Hide the ", " (comma and space) before the state */
    .faso-workszoom-section-data-gallery span:nth-of-type(3)::before {
        content: "";
        display: none !important;
    }

    /* Replace the ", Missouri" with just "Missouri" by hiding the comma */
    .faso-workszoom-section-data-gallery span:nth-of-type(3) {
        font-size: 14px !important;
    }

    /* Use JavaScript to remove the comma - this is more reliable */



    /** ==================================================================
     *   13. CUSTOM FONTS – Dancing Script (700 weight only)
     *   ================================================================== **/
    @font-face {
        font-family: 'Dancing Script';
        font-style: normal;
        font-weight: 700;
        font-display: swap;
        src: url('../fonts/dancing-script-v29-latin-700.woff2') format('woff2'),
        url('../fonts/dancing-script-v29-latin-700.woff') format('woff');
    }

    /** ==================================================================
     *   11. HEADINGS – Dancing Script
     *   ================================================================== **/
    .faso-main-section-main h1,
    .faso-main-section-main h1:first-of-type,
    .faso-main-data-mainpageheading h1,
    #main-page-heading h1,
    .faso-main-data-mainpagetext h1 {
        font-family: 'Dancing Script', cursive, sans-serif !important;
        font-weight: 700 !important;
        color: var(--content-heading) !important;
        text-align: center !important;
        margin: 35px 0 25px !important;
    }
    .faso-main-section-main h1,
    .faso-main-data-mainpageheading h1,
    #main-page-heading h1,
    .faso-main-data-mainpagetext h1,
    h1,
    .homepage-only-title h1,
    h2 {
        text-transform: none !important;
    }

    /** ==================================================================
     *   12. FOOTER – Newsletter style
     *   ================================================================== **/
    .faso-footer {
        background: var(--footer-background) !important;
        color: var(--footer-text) !important;
        padding: 35px 40px !important;
        text-align: center !important;
        font-size: 14px !important;
        line-height: 1.8 !important;
        border-top: 3px solid var(--footer-text) !important;
        margin-top: 40px !important;
        clear: both !important;
    }
    .faso-footer .footer-content,
    .faso-footer p,
    .faso-footer div {
        max-width: 700px !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }
    .faso-footer strong,
    .faso-footer .site-title {
        color: var(--footer-text) !important;
        font-size: 16px !important;
        display: block !important;
        margin-bottom: 10px !important;
    }
    .faso-footer a:not(.social-link) {
        color: var(--footer-text) !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        display: block !important;
        margin: 5px 0 !important;
    }
    .faso-footer .social-links,
    .faso-footer a.social-link {
        margin: 18px 0 !important;
        font-size: 15px !important;
    }
    .faso-footer a[href*="instagram"],
    .faso-footer a[href*="saatchiart"],
    .faso-footer a[href*="facebook"] {
        color: var(--footer-text) !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        margin: 0 12px !important;
        display: inline-block !important;
    }
    .faso-footer a[href*="instagram"]:after {
        content: " | ";
        color: var(--asset-soft-foreground);
        margin: 0 6px;
    }
    .faso-footer a[href*="instagram"]:last-child:after {
        content: "";
    }
    .faso-footer p:last-child {
        font-size: 13px !important;
        color: var(--content-text-deemphasized) !important;
        margin-top: 20px !important;
        font-style: italic !important;
    }
    .faso-footer::before {
        content: "";
        display: block;
        height: 2px;
        background: linear-gradient(to right, transparent 10%, var(--content-line) 50%, transparent 90%);
        margin: 0 0 20px 0;
        width: 100%;
        max-width: 700px;
        margin-left: auto;
        margin-right: auto;
    }
    .faso-main-section-main,
    .content-section {
        margin-bottom: 0 !important;
    }

    /* Hide FASO default footer junk */
    .faso-footer .col-1-2,
    .faso-footer .copyright,
    .faso-footer .subscribe-form,
    .faso-footer .faso-social-icons {
        display: none !important;
    }

    /* Footer mobile adjustments */
    @media (max-width: 768px) {
        .faso-footer {
            padding: 25px 20px !important;
        }
        .faso-footer a[href*="instagram"],
        .faso-footer a[href*="saatchiart"],
        .faso-footer a[href*="facebook"] {
            display: block !important;
            margin: 5px 0 !important;
        }
        .faso-footer a[href*="instagram"]:after {
            content: "";
        }
    }

    /** ==================================================================
     *   13. NAVIGATION – Solid burgundy background & colors
     *   ================================================================== **/
    .header.faso-header {
        padding: 0 !important;
        border-bottom: none !important;
    }
    .header.faso-header .row,
    .header.faso-header .row .col-1-1 {
        padding: 0 !important;
    }
    .faso-nav,
    .sf-menu,
    nav {
        background: linear-gradient(135deg, var(--button-background) 90%, var(--nav-background) 100%) !important;
        border-bottom: 3px solid var(--nav-line) !important;
        padding: 0 !important;
    }
    .sf-menu li a,
    .sf-menu a,
    nav a,
    .faso-nav-heading a,
    .logo a {
        color: var(--nav-link) !important;
        font-family: 'Tenor Sans', sans-serif !important;
        letter-spacing: 0.1em !important;
        font-weight: 1000 !important;
        text-shadow: 0 1px 2px rgba(var(--shadow-rgb), 0.1) !important;
    }
    .sf-menu .selectednavlink > a {
        color: var(--button-text) !important;
        font-weight: 1000 !important;
        background: var(--button-background) !important;
    }
    .sf-menu ul,
    .sf-menu ul li a {
        background: var(--nav-background) !important;
        color: var(--button-text) !important;
        border: none !important;
    }
    .sf-menu ul li a:hover {
        color: var(--nav-link-hover) !important;
        background: var(--button-background) !important;
    }

    /* Mobile menu fixes */
    @media (max-width: 768px) {
        .sf-menu li a,
        nav a {
            color: var(--button-text) !important;
            background: var(--nav-background) !important;
        }
        .sf-menu li a:hover {
            background: var(--button-background) !important;
        }
        .sf-menu .selectednavlink > a,
        .sf-menu li.selected a,
        .sf-menu a.selected,
        nav .current-menu-item > a,
        .mobile-menu .current-menu-item a,
        .faso-nav li.selected a {
            color: var(--button-text) !important;
            background: var(--button-background) !important;
            font-weight: 1000 !important;
        }
    }


/** ==================================================================
 *   14. MOBILE – 
 *   ================================================================== **/
    @media only screen and (max-width: 768px) {
        /* 14.1. Force caption to be visible on mobile */
        .faso-works-data-linktodetail .item-caption {
            position: static !important;
            opacity: 1 !important;
            transform: none !important;
            padding: 4px !important;
            margin: 4px !important;
            width: 100% !important;
            box-sizing: border-box !important;
        }

        /* 14.2. Mobile Title styling */
        .item-caption .item-title {
            font-size: 16px !important;
            color: var(--site-heading) !important;
            padding: 14px !important;
            background: var(--content-highlight-background) !important;
            background-color: var(--content-highlight-background) !important;
            opacity: 1 !important;
            order: 12 !important;
        }
        .item-caption .item-category {
            font-size: 13px !important;
            color: var(--content-text-deemphasized) !important;
            line-height: 1.3 !important;
        }

        /* 14.3. Ribbon positioning on mobile */
        .faso-works-data-linktodetail::before {
            margin: 1px auto !important;
        }

        .faso-works-section-thumbnail-item,
        .faso-works-data-linktodetail {
            width: 100% !important;
            max-width: 100% !important;
            flex-basis: 100% !important;
        }
        /* 14.4. Auto-Morphing Ribbon for SOLD / NOT AVAILABLE on mobile */
        .faso-works-data-linktodetail:has(img[data-src*="sold=Sold" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Sold=Sold" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Private Collection" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Museum Collection" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Government Collection" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Corporate Collection" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Not For Sale" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="On Hold" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Donated" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Through Gallery" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Through Museum" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Destroyed" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Lost" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Stolen" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Out of Stock" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Gifted" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Commission" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Ephemeral" i])::before,
        .faso-works-data-linktodetail:has(img[data-src*="Prints Only" i])::before,
        .cheryl-sold::before,
        .faso-workszoom-data-availibility.cheryl-sold::before {
            animation: buyPrintsSOLDMorph 10s ease-in-out infinite; /* Use infinite loop */
        }

        /* 14.5. Auto-Morphing Ribbon for AVAILABLE and PRINTS ONLY on mobile */
        .faso-works-data-linktodetail:has(img[data-src*="Available" i])::before,
        .cheryl-available::before {
            animation: buyNowMorph 10s ease-in-out infinite; /* Use infinite loop */
        }
        /* 14.6. Disable Hover Effects on Mobile (resetting hover to non-hover state) */
        .faso-works-data-linktodetail:hover .item-caption {
            transform: none !important;
            padding: 4px !important; /* Back to mobile default padding */
            margin: 4px !important;   /* Back to mobile default margin */
            width: 100% !important;   /* Back to mobile default width */
        }
        .faso-works-data-linktodetail:hover .item-caption .item-title {
            transform: none !important;
            color: var(--site-heading) !important;
            padding: 14px !important;
            background: var(--nav-link) !important;
            background-color: var(--nav-link) !important;
        }
        .faso-works-data-linktodetail:hover .item-caption .item-category {
            transform: none !important;
            color: var(--content-text-deemphasized) !important;
        }
    }

    .faso-works-data-linktodetail:hover .item-caption {
        opacity: 1 !important;
        transform: none !important;
        padding: 14px !important;
        margin: 14px !important;
        width: 95% !important;
        box-sizing: border-box !important;
    }

    .faso-works-data-linktodetail:hover .item-caption .item-title {
        transform: none !important;
        font-size: 16px !important;
        color: var(--site-heading) !important;
        padding: 14px !important;
        background: var(--nav-link) !important;
        background-color: var(--nav-link) !important;
        opacity: 1 !important;
        order: 12 !important;
    }
    .faso-works-data-linktodetail:hover .item-caption .item-category {
        transform: none !important;
        font-size: 13px !important;
        color: var(--content-text-deemphasized) !important;
        line-height: 1.3 !important;
        order: 13 !important;
    }

/** ==================================================================
 *   15. keyframes
 *   ================================================================== **/

@keyframes buyPrintsSOLDMorph {
    0%, 49% { /* Reduced time for the first phase (40% of 5s = 2s; 20% of 10s = 2s) */
        content: "BUY PRINTS NOW!";
        color: var(--asset-background);
        opacity: 1;
        background: linear-gradient(90deg, var(--custom-prints-color), var(--custom-prints-blue-light), var(--custom-prints-color), var(--custom-prints-blue-light), var(--custom-prints-color));
        background-size: 300% 300%;
        transform: translateY(-2px) scale(1.04);
        box-shadow: 0 0 20px rgba(var(--shadow-blue-rgb), 0.6), 0 0 40px rgba(var(--shadow-blue-rgb), 0.3);
    }
    50% { /* Quick transition (4% of 10s = 0.4s) */
        opacity: 0;
    }
    51%, 99% { /* Reduced time for the second phase (30% of 5s = 1.5s; 20% of 10s = 2s) */
        content: "SOLD";
        background: var(--custom-sold-color);
        color: var(--asset-background);
        opacity: 1;
        transform: translateY(-2px) scale(1.04);
        box-shadow: 0 0 20px rgba(var(--shadow-red-rgb), 0.6), 0 0 40px rgba(var(--shadow-red-rgb), 0.3);
    }
    100% { /* **Long Pause** (53% of 10s = 5.3s) */
        opacity: 0;
    }
}

    @keyframes buyNowMorph {
        0%, 49% {
            content: "Add to your collection!";
            color: var(--asset-background);
            opacity: 1;
            background: linear-gradient(90deg, var(--custom-available-color), var(--custom-prints-light), var(--custom-prints-lighter), var(--custom-prints-light), var(--custom-available-color));
            background-size: 300% 300%;
            box-shadow: 0 0 20px rgba(var(--shadow-green-rgb), 0.6), 0 0 40px rgba(var(--shadow-green-rgb), 0.3);
        }
        50% {
            opacity: 0;
        }
        51%, 99% {
            content: "BUY NOW!";
            color: var(--asset-background);
            opacity: 1;
            background-size: 300% 300% !important;
            box-shadow: 0 0 20px rgba(var(--shadow-green-rgb), 0.6), 0 0 40px rgba(var(--shadow-green-rgb), 0.3);
        }
        100% {
            opacity: 0;
        }
    }