/* =========================================
   MOBILE SHOP PATCH V1
   race-styles Responsive-Weiche
   Nur Mobile/kleine Tablets.
   Desktop bleibt unangetastet.
   Einbindung NACH den jeweiligen Seiten-CSS-Dateien:
   /css/mobile_shop_patch_v1.css?v=1
   ========================================= */


/* -----------------------------------------
   1. Globale Mobile-Basis
   ----------------------------------------- */
@media (max-width: 760px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body {
        -webkit-text-size-adjust: 100% !important;
        text-size-adjust: 100% !important;
    }

    img,
    iframe,
    video {
        max-width: 100% !important;
    }

    #wrapper {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    #page-content-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
}


/* -----------------------------------------
   2. Sidebar Mobile: initial geschlossen
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category #sidebar-wrapper,
    body.page-subcategory #sidebar-wrapper,
    body.page-product-list #sidebar-wrapper,
    body.page-service #sidebar-wrapper,
    body.page-search #sidebar-wrapper,
    body.page-contact #sidebar-wrapper,
    body.page-contact-form #sidebar-wrapper,
    body.page-home #sidebar-wrapper,
    body #wrapper:not(.toggled) #sidebar-wrapper {
        position: fixed !important;
        top: var(--topbar-height, 58px) !important;
        left: 0 !important;
        right: auto !important;
        width: min(280px, 86vw) !important;
        max-width: 86vw !important;
        height: calc(100vh - var(--topbar-height, 58px)) !important;
        transform: translate3d(-105%, 0, 0) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        z-index: 2147482500 !important;
        overflow-y: auto !important;
        background: #fff !important;
        box-shadow: 0 8px 28px rgba(0,0,0,0.24) !important;
        transition: transform 0.24s ease, opacity 0.16s ease, visibility 0.16s ease !important;
    }

    body #wrapper.toggled #sidebar-wrapper {
        transform: translate3d(0, 0, 0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    body #wrapper.toggled #page-content-wrapper {
        margin-left: 0 !important;
        transform: none !important;
    }
}


/* -----------------------------------------
   3. Seiten-Wrapper: einheitliche Mobile-Breite
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category #page-content-wrapper.category-page-main,
    body.page-category #page-content-wrapper.subcategory-page,
    body.page-subcategory #page-content-wrapper.subcategory-page,
    body.page-product-list #page-content-wrapper.product-list-page,
    body.page-service #page-content-wrapper.page-service-content,
    body.page-search #page-content-wrapper.search-page,
    body.page-contact #page-content-wrapper.contact-page,
    body.page-contact-form #page-content-wrapper.contact-form-page {
        width: 100% !important;
        max-width: 100% !important;
        padding: 28px 14px 54px 14px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body.page-category .category-page,
    body.page-category .subcategory-content,
    body.page-subcategory .subcategory-content,
    body.page-product-list .product-list-content,
    body.page-service .service-content-flow,
    body.page-search .search-content-flow {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
}


/* -----------------------------------------
   4. Überschriften: ruhiger und lesbarer
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category .service-page-header,
    body.page-category .subcategory-page-header,
    body.page-subcategory .subcategory-page-header,
    body.page-product-list .product-list-page-header,
    body.page-service .service-page-header,
    body.page-search .search-page-header {
        margin: 0 0 22px 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    body.page-category .service-page-header h1,
    body.page-category .subcategory-page-header h1,
    body.page-subcategory .subcategory-page-header h1,
    body.page-service .service-page-header h1,
    body.page-search .search-page-header h1 {
        margin: 0 0 8px 0 !important;
        font-size: 26px !important;
        line-height: 1.18 !important;
        letter-spacing: -0.02em !important;
        font-weight: 900 !important;
    }

    body.page-product-list .product-list-page-header h2,
    body.page-category .product-list-page-header h2,
    body.page-subcategory .product-list-page-header h2 {
        margin: 0 0 8px 0 !important;
        font-size: 26px !important;
        line-height: 1.18 !important;
        letter-spacing: -0.02em !important;
        font-weight: 900 !important;
    }

    body.page-category .service-page-subtitle,
    body.page-category .subcategory-page-subtitle,
    body.page-subcategory .subcategory-page-subtitle,
    body.page-product-list .product-list-page-header .subtitle,
    body.page-service .service-page-subtitle,
    body.page-search .service-page-subtitle {
        margin: 0 !important;
        font-size: 15px !important;
        line-height: 1.55 !important;
        color: #666 !important;
    }
}


/* -----------------------------------------
   5. Kategorie-/Subcategory-Kacheln
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category .category-subcat-grid,
    body.page-subcategory .subcategory-subcat-grid,
    body.page-subcategory .category-subcat-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px 0 !important;
    }

    body.page-category .category-subcat-card,
    body.page-subcategory .category-subcat-card,
    body.page-subcategory .subcategory-subcat-card {
        min-height: 48px !important;
        padding: 0 14px !important;
        border-radius: 7px !important;
    }

    body.page-category .category-subcat-name,
    body.page-subcategory .category-subcat-name {
        font-size: 14px !important;
    }
}


/* -----------------------------------------
   6. Toolbar / Pager Mobile
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category .subcategory-toolbar,
    body.page-subcategory .subcategory-toolbar,
    body.page-product-list .subcategory-toolbar {
        width: 100% !important;
        max-width: 100% !important;
        margin: 22px 0 24px 0 !important;
        padding: 12px 0 !important;
        border-top: 1px solid #eeeeee !important;
        border-bottom: 0 !important;
    }

    body.page-product-list .product-list-bottom-toolbar,
    body.page-product-list .subcategory-toolbar.product-list-bottom-toolbar {
        margin-top: 28px !important;
        margin-bottom: 34px !important;
        padding: 0 0 20px 0 !important;
        border-top: 0 !important;
        border-bottom: 1px solid #eeeeee !important;
    }

    body.page-category .subcategory-pager p,
    body.page-subcategory .subcategory-pager p,
    body.page-product-list .subcategory-pager p {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    body.page-category .subcategory-pager a,
    body.page-category .subcategory-pager strong,
    body.page-subcategory .subcategory-pager a,
    body.page-subcategory .subcategory-pager strong,
    body.page-product-list .subcategory-pager a,
    body.page-product-list .subcategory-pager strong {
        font-size: 16px !important;
        margin: 0 4px !important;
    }

    body.page-category .subcategory-pager span,
    body.page-subcategory .subcategory-pager span,
    body.page-product-list .subcategory-pager span {
        display: inline-block !important;
        margin-left: 8px !important;
        font-size: 12px !important;
    }
}


/* -----------------------------------------
   7. Produktgrid und Produktboxen
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-category .category-product-grid,
    body.page-subcategory .category-product-grid,
    body.page-product-list .category-product-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 34px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-category .category-product-card,
    body.page-subcategory .category-product-card,
    body.page-product-list .category-product-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-category .category-product-image,
    body.page-subcategory .category-product-image,
    body.page-product-list .category-product-image {
        width: 100% !important;
        min-height: 220px !important;
        aspect-ratio: 4 / 3 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        background: #fff !important;
    }

    body.page-category .category-product-image img,
    body.page-subcategory .category-product-image img,
    body.page-product-list .category-product-image img {
        width: 94% !important;
        height: 94% !important;
        max-width: 94% !important;
        max-height: 94% !important;
        object-fit: contain !important;
        object-position: center center !important;
        margin: auto !important;
    }

    body.page-category .category-product-info,
    body.page-subcategory .category-product-info,
    body.page-product-list .category-product-info {
        margin-top: 11px !important;
    }

    body.page-category .prodbox-name,
    body.page-subcategory .prodbox-name,
    body.page-product-list .prodbox-name {
        display: block !important;
        width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-size: 17px !important;
        line-height: 1.28 !important;
    }

    body.page-category .prodbox_daten,
    body.page-subcategory .prodbox_daten,
    body.page-product-list .prodbox_daten {
        font-size: 14px !important;
        line-height: 1.45 !important;
    }

    body.page-category .prodbox_preis,
    body.page-subcategory .prodbox_preis,
    body.page-product-list .prodbox_preis {
        font-size: 17px !important;
        line-height: 1.35 !important;
    }

    body.page-category .prodbox_liefer,
    body.page-subcategory .prodbox_liefer,
    body.page-product-list .prodbox_liefer {
        width: 58px !important;
        min-width: 58px !important;
        height: auto !important;
    }
}


/* -----------------------------------------
   8. Suche Mobile
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-search .search-inline-group {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.page-search .search-inline-group input {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        height: 46px !important;
        padding: 0 12px !important;
        font-size: 14px !important;
    }

    body.page-search .search-inline-button {
        flex: 0 0 auto !important;
        min-width: 118px !important;
        height: 46px !important;
        padding: 0 13px !important;
        font-size: 14px !important;
        white-space: nowrap !important;
    }

    body.page-search .search-select-wrap,
    body.page-search .search-select-wrap select {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.page-search .search-sitemap-grid {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }
}


/* -----------------------------------------
   9. Service / Tabellen / Medien
   ----------------------------------------- */
@media (max-width: 760px) {
    body.page-service .service-content-flow {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    body.page-service .service-content-flow h3 {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    body.page-service table,
    body.page-service .shipping-cost-table {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 13px !important;
    }

    body.page-service .shipping-logos {
        gap: 12px !important;
    }

    body.page-service .shipping-logos img {
        width: 62px !important;
        height: 62px !important;
        object-fit: contain !important;
    }
}


/* -----------------------------------------
   10. Footer Mobile
   ----------------------------------------- */
@media (max-width: 760px) {
    #footer.footer-app {
        margin-top: 0 !important;
    }

    .footer-app .footer-inner {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        box-sizing: border-box !important;
    }

    .footer-app .footer-card {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}


/* -----------------------------------------
   11. Sehr kleine Geräte
   ----------------------------------------- */
@media (max-width: 420px) {
    body.page-category .category-product-image,
    body.page-subcategory .category-product-image,
    body.page-product-list .category-product-image {
        min-height: 190px !important;
    }

    body.page-category .service-page-header h1,
    body.page-subcategory .subcategory-page-header h1,
    body.page-product-list .product-list-page-header h2,
    body.page-service .service-page-header h1,
    body.page-search .search-page-header h1 {
        font-size: 24px !important;
    }

    body.page-search .search-inline-button {
        min-width: 104px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

/* =========================================
   MOBILE SHOP PATCH V2
   Ergänzung Produktseite / page-item
   ========================================= */

@media (max-width: 760px) {
    body.page-item #page-content-wrapper.product-item-page {
        width: 100% !important;
        max-width: 100% !important;
        padding: 28px 14px 54px 14px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body.page-item .product-page {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-item .product-layout {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        width: 100% !important;
    }

    body.page-item .product-gallery-main {
        min-height: 235px !important;
    }

    body.page-item .product-gallery-main img {
        max-height: 235px !important;
    }

    body.page-item #sidebar-wrapper,
    body.page-item #wrapper:not(.toggled) #sidebar-wrapper {
        position: fixed !important;
        top: var(--topbar-height, 58px) !important;
        left: 0 !important;
        right: auto !important;
        width: min(280px, 86vw) !important;
        max-width: 86vw !important;
        height: calc(100vh - var(--topbar-height, 58px)) !important;
        transform: translate3d(-105%, 0, 0) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        z-index: 2147482500 !important;
        overflow-y: auto !important;
        background: #fff !important;
        box-shadow: 0 8px 28px rgba(0,0,0,0.24) !important;
    }

    body.page-item #wrapper.toggled #sidebar-wrapper {
        transform: translate3d(0, 0, 0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    body.page-item #wrapper.toggled #page-content-wrapper {
        margin-left: 0 !important;
        transform: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V3
   Zentrale Mobile-Produktlisten-Basis
   =========================================================
   Phase 1 Konsolidierung:
   - gilt nur mobil bis 760px
   - ersetzt verstreute Produktlisten-Mobile-Regeln
   - Desktop bleibt unangetastet
   - show_item / Produktdetail bleibt bewusst außen vor

   Gilt für:
   - show_category       body.page-category
   - show_subcategory    body.page-category.page-subcategory
   - search_result       body.page-product-list.page-search-results
   - show_bestseller     body.page-product-list.page-bestseller
   - show_updates        body.page-product-list.page-updates

   Nicht enthalten:
   - Header
   - Sidebar
   - Produktdetailseite page-item
   ========================================================= */

@media (max-width: 760px) {

    /* -----------------------------------------
       1. Produktlisten immer 2-spaltig
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-grid,
    body.page-category.page-subcategory .subcategory-product-grid,
    body.page-subcategory .subcategory-product-grid,
    body.page-product-list .category-product-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 24px 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        clear: both !important;
    }

    /* Bootstrap-/Altspalten als Grid-Items neutralisieren */
    body.page-category:not(.page-item) .category-product-grid > *,
    body.page-category.page-subcategory .subcategory-product-grid > *,
    body.page-subcategory .subcategory-product-grid > *,
    body.page-product-list .category-product-grid > * {
        float: none !important;
        clear: none !important;
        display: block !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* Alte clearfix/br/hr im Produktgrid nicht als Gridzelle zählen lassen */
    body.page-category:not(.page-item) .category-product-grid > .clearfix,
    body.page-category:not(.page-item) .category-product-grid > br,
    body.page-category:not(.page-item) .category-product-grid > hr,
    body.page-category.page-subcategory .subcategory-product-grid > .clearfix,
    body.page-category.page-subcategory .subcategory-product-grid > br,
    body.page-category.page-subcategory .subcategory-product-grid > hr,
    body.page-product-list .category-product-grid > .clearfix,
    body.page-product-list .category-product-grid > br,
    body.page-product-list .category-product-grid > hr {
        display: none !important;
    }

    /* -----------------------------------------
       2. Produktkarte Grundlayout
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-card,
    body.page-category:not(.page-item) .category-product-grid .prodbox,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-card,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox,
    body.page-subcategory .subcategory-product-grid .category-product-card,
    body.page-subcategory .subcategory-product-grid .prodbox,
    body.page-product-list .category-product-card,
    body.page-product-list .category-product-grid .prodbox {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        float: none !important;
        clear: none !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        background: transparent !important;
    }

    /* -----------------------------------------
       3. Produktbild
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-image,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image,
    body.page-subcategory .subcategory-product-grid .category-product-image,
    body.page-product-list .category-product-image {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        aspect-ratio: auto !important;
        border: 1px solid #dedede !important;
        background: #fff !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    body.page-category:not(.page-item) .category-product-image img,
    body.page-category:not(.page-item) .category-product-card > a:first-child img,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image img,
    body.page-subcategory .subcategory-product-grid .category-product-image img,
    body.page-product-list .category-product-image img,
    body.page-product-list .category-product-card > a:first-child img {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
        margin: 0 auto !important;
        border: 0 !important;
        box-sizing: border-box !important;
    }

    /* -----------------------------------------
       4. Produktinfo / Typografie zentral
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-info,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-product-list .category-product-info {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 9px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.page-category:not(.page-item) .prodbox-name,
    body.page-category:not(.page-item) .xr_s10 a,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-product-list .category-product-grid .prodbox-name,
    body.page-product-list .category-product-grid .xr_s10 a {
        display: inline !important;
        width: auto !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-size: 15px !important;
        line-height: 1.22 !important;
        font-weight: 600 !important;
        letter-spacing: -0.01em !important;
        color: #111 !important;
    }

    body.page-category:not(.page-item) .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-product-list .category-product-grid .xr_s10 {
        min-height: 0 !important;
        margin: 9px 0 5px 0 !important;
        line-height: 1.22 !important;
    }

    body.page-category:not(.page-item) .prodbox_daten,
    body.page-category:not(.page-item) .xr_s7,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s7,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .xr_s7,
    body.page-product-list .category-product-grid .prodbox_daten,
    body.page-product-list .category-product-grid .xr_s7 {
        font-size: 11px !important;
        line-height: 1.3 !important;
        color: #888 !important;
    }

    body.page-category:not(.page-item) .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-product-list .category-product-grid .prodbox_preis {
        min-height: 0 !important;
        margin-top: 6px !important;
        margin-bottom: 4px !important;
        clear: both !important;
        display: block !important;
        line-height: 1.2 !important;
    }

    body.page-category:not(.page-item) .prodbox_preis,
    body.page-category:not(.page-item) .prodbox_preis span,
    body.page-category:not(.page-item) .prodbox_preis span[style],
    body.page-category:not(.page-item) .prodbox_preis strike,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-product-list .category-product-grid .prodbox_preis,
    body.page-product-list .category-product-grid .prodbox_preis span,
    body.page-product-list .category-product-grid .prodbox_preis span[style],
    body.page-product-list .category-product-grid .prodbox_preis strike {
        font-size: 16px !important;
        line-height: 1.2 !important;
    }

    /* -----------------------------------------
       5. Badge / Ampel / Versand
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-grid img[src*="badge_"],
    body.page-category.page-subcategory .subcategory-product-grid img[src*="badge_"],
    body.page-subcategory .subcategory-product-grid img[src*="badge_"],
    body.page-product-list .category-product-grid img[src*="badge_"] {
        display: inline-block !important;
        width: 33px !important;
        min-width: 33px !important;
        max-width: 33px !important;
        height: 19px !important;
        min-height: 19px !important;
        max-height: 19px !important;
        object-fit: contain !important;
        border: 0 !important;
        margin-left: 5px !important;
        vertical-align: middle !important;
        transform: none !important;
    }

    body.page-category:not(.page-item) .category-product-grid img.prodbox_liefer,
    body.page-category:not(.page-item) .category-product-grid img[src*="status_"],
    body.page-category.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-category.page-subcategory .subcategory-product-grid img[src*="status_"],
    body.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-subcategory .subcategory-product-grid img[src*="status_"],
    body.page-product-list .category-product-grid img.prodbox_liefer,
    body.page-product-list .category-product-grid img[src*="status_"] {
        display: inline-block !important;
        width: 43px !important;
        min-width: 43px !important;
        max-width: 43px !important;
        height: 10px !important;
        min-height: 10px !important;
        max-height: 10px !important;
        object-fit: fill !important;
        border: 0 !important;
        margin: 0 0 0 5px !important;
        vertical-align: middle !important;
        transform: none !important;
        position: relative !important;
        top: -1px !important;
    }

    body.page-category:not(.page-item) .category-shipping-link,
    body.page-category:not(.page-item) .open-shipping-modal,
    body.page-category.page-subcategory .subcategory-product-grid .category-shipping-link,
    body.page-category.page-subcategory .subcategory-product-grid .open-shipping-modal,
    body.page-subcategory .subcategory-product-grid .category-shipping-link,
    body.page-subcategory .subcategory-product-grid .open-shipping-modal,
    body.page-product-list .category-product-grid .category-shipping-link,
    body.page-product-list .category-product-grid .open-shipping-modal {
        font-size: 11px !important;
        line-height: 1.25 !important;
        color: #888 !important;
        vertical-align: middle !important;
    }

    body.page-category:not(.page-item) .ampel-link,
    body.page-category.page-subcategory .subcategory-product-grid .ampel-link,
    body.page-subcategory .subcategory-product-grid .ampel-link,
    body.page-product-list .category-product-grid .ampel-link {
        display: inline-block !important;
        width: auto !important;
        max-width: none !important;
        line-height: 1 !important;
        vertical-align: middle !important;
    }

    /* -----------------------------------------
       6. Top-Toolbar / Pager / Sortierer zentral
       ----------------------------------------- */

    body.page-category.page-subcategory .row.toolbar,
    body.page-category.page-subcategory .toolbar,
    body.page-product-list .row.toolbar,
    body.page-product-list .toolbar {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 8px !important;
        row-gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.page-category.page-subcategory .row.toolbar .pager,
    body.page-category.page-subcategory .toolbar .pager,
    body.page-product-list .row.toolbar .pager,
    body.page-product-list .toolbar .pager {
        grid-column: 1 !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        float: none !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .row.toolbar .filter,
    body.page-category.page-subcategory .toolbar .filter,
    body.page-product-list .row.toolbar .filter,
    body.page-product-list .toolbar .filter {
        grid-column: 2 !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        float: none !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: right !important;
        overflow: hidden !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .row.toolbar .pager p,
    body.page-category.page-subcategory .toolbar .pager p,
    body.page-product-list .row.toolbar .pager p,
    body.page-product-list .toolbar .pager p {
        margin: 0 !important;
        white-space: nowrap !important;
        font-size: 13px !important;
        line-height: 1.25 !important;
    }

    /* obere Ergebniszahl mobil ausblenden */
    body.page-category.page-subcategory .row.toolbar .pager p > span,
    body.page-category.page-subcategory .toolbar .pager p > span,
    body.page-product-list .row.toolbar .pager p > span,
    body.page-product-list .toolbar .pager p > span {
        display: none !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter,
    body.page-category.page-subcategory .toolbar ul.filter,
    body.page-product-list .row.toolbar ul.filter,
    body.page-product-list .toolbar ul.filter {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 8px !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        list-style: none !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter li,
    body.page-category.page-subcategory .toolbar ul.filter li,
    body.page-product-list .row.toolbar ul.filter li,
    body.page-product-list .toolbar ul.filter li {
        display: inline-block !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter li a,
    body.page-category.page-subcategory .toolbar ul.filter li a,
    body.page-product-list .row.toolbar ul.filter li a,
    body.page-product-list .toolbar ul.filter li a {
        display: inline-block !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 3px 7px !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 380px) {
    body.page-category:not(.page-item) .category-product-grid,
    body.page-category.page-subcategory .subcategory-product-grid,
    body.page-subcategory .subcategory-product-grid,
    body.page-product-list .category-product-grid {
        gap: 22px 10px !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter,
    body.page-category.page-subcategory .toolbar ul.filter,
    body.page-product-list .row.toolbar ul.filter,
    body.page-product-list .toolbar ul.filter {
        gap: 5px !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter li a,
    body.page-category.page-subcategory .toolbar ul.filter li a,
    body.page-product-list .row.toolbar ul.filter li a,
    body.page-product-list .toolbar ul.filter li a {
        padding-left: 5px !important;
        padding-right: 5px !important;
        font-size: 11px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V5
   Sortierer aktiv: Schwarz -> ruhiges Grau
   =========================================================
   Basis:
   - V3 Produktlisten-Konsolidierung
   - Design bleibt erhalten
   - nur aktive schwarze Sortierfläche wird entschärft
   - aktiver Pfeil wird schwarz
   - keine Desktop-Änderung
   ========================================================= */

@media (max-width: 760px) {

    /* aktive Sortierfläche: nicht mehr schwarz, sondern ruhiges Grau */
    body.page-category.page-subcategory .row.toolbar ul.filter li.act a,
    body.page-category.page-subcategory .toolbar ul.filter li.act a,
    body.page-product-list .row.toolbar ul.filter li.act a,
    body.page-product-list .toolbar ul.filter li.act a {
        background: #777777 !important;
        border-color: #777777 !important;
        color: #ffffff !important;
        box-shadow: none !important;
    }

    /* Hover auf aktiv nicht wieder schwarz werden lassen */
    body.page-category.page-subcategory .row.toolbar ul.filter li.act a:hover,
    body.page-category.page-subcategory .toolbar ul.filter li.act a:hover,
    body.page-product-list .row.toolbar ul.filter li.act a:hover,
    body.page-product-list .toolbar ul.filter li.act a:hover {
        background: #6d6d6d !important;
        border-color: #6d6d6d !important;
        color: #ffffff !important;
    }

    /* aktiver Sortierpfeil: schwarz statt hell/weiß */
    body.page-category.page-subcategory .row.toolbar ul.filter li.act img,
    body.page-category.page-subcategory .toolbar ul.filter li.act img,
    body.page-product-list .row.toolbar ul.filter li.act img,
    body.page-product-list .toolbar ul.filter li.act img {
        filter: brightness(0) !important;
        opacity: 1 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V6
   Produktkarten-Feinschliff mobil
   =========================================================
   Basis:
   - V5 Sortierer Soft Gray
   - nur Mobile bis 760px
   - Desktop / Header / Sidebar / show_item bleiben außen vor

   Änderungen:
   - aktiver Sortierer heller
   - SALE-Badge kompakter, weniger länglich
   - Ampel größer
   - Preiszeile ruhiger, aber weniger langweilig
   - Produktkarten unten mehr Luft
   ========================================================= */

@media (max-width: 760px) {

    /* -----------------------------------------
       1. Sortierer: aktives Grau heller
       ----------------------------------------- */

    body.page-category.page-subcategory .row.toolbar ul.filter li.act a,
    body.page-category.page-subcategory .toolbar ul.filter li.act a,
    body.page-product-list .row.toolbar ul.filter li.act a,
    body.page-product-list .toolbar ul.filter li.act a {
        background: #969696 !important;
        border-color: #969696 !important;
        color: #ffffff !important;
    }

    body.page-category.page-subcategory .row.toolbar ul.filter li.act a:hover,
    body.page-category.page-subcategory .toolbar ul.filter li.act a:hover,
    body.page-product-list .row.toolbar ul.filter li.act a:hover,
    body.page-product-list .toolbar ul.filter li.act a:hover {
        background: #888888 !important;
        border-color: #888888 !important;
        color: #ffffff !important;
    }

    /* -----------------------------------------
       2. Produktkarten: mehr Ruhe nach unten
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-card,
    body.page-category:not(.page-item) .category-product-grid .prodbox,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-card,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox,
    body.page-subcategory .subcategory-product-grid .category-product-card,
    body.page-subcategory .subcategory-product-grid .prodbox,
    body.page-product-list .category-product-card,
    body.page-product-list .category-product-grid .prodbox {
        padding-bottom: 12px !important;
    }

    body.page-category:not(.page-item) .category-product-grid,
    body.page-category.page-subcategory .subcategory-product-grid,
    body.page-subcategory .subcategory-product-grid,
    body.page-product-list .category-product-grid {
        gap: 30px 12px !important;
    }

    /* -----------------------------------------
       3. Produktname: minimal ruhiger
       ----------------------------------------- */

    body.page-category:not(.page-item) .prodbox-name,
    body.page-category:not(.page-item) .xr_s10 a,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-product-list .category-product-grid .prodbox-name,
    body.page-product-list .category-product-grid .xr_s10 a {
        font-size: 14.5px !important;
        line-height: 1.18 !important;
        font-weight: 500 !important;
        letter-spacing: -0.015em !important;
    }

    body.page-category:not(.page-item) .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-product-list .category-product-grid .xr_s10 {
        margin-top: 10px !important;
        margin-bottom: 6px !important;
    }

    /* -----------------------------------------
       4. Preiszeile: alter Preis dezenter,
          neuer Preis klarer und weniger langweilig
       ----------------------------------------- */

    body.page-category:not(.page-item) .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-product-list .category-product-grid .prodbox_preis {
        margin-top: 10px !important;
        margin-bottom: 8px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }

    body.page-category:not(.page-item) .prodbox_preis strike,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-product-list .category-product-grid .prodbox_preis strike {
        font-size: 15px !important;
        line-height: 1 !important;
        color: #777777 !important;
        font-weight: 400 !important;
        text-decoration-thickness: 1px !important;
        text-decoration-color: #666666 !important;
        margin-right: 5px !important;
    }

    body.page-category:not(.page-item) .prodbox_preis span,
    body.page-category:not(.page-item) .prodbox_preis span[style],
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-product-list .category-product-grid .prodbox_preis span,
    body.page-product-list .category-product-grid .prodbox_preis span[style] {
        font-size: 18px !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        letter-spacing: 0.01em !important;
    }

    /* -----------------------------------------
       5. SALE-Badge: weniger länglich,
          näher an Preis, aber nicht mittig gestreckt
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-grid img[src*="badge_"],
    body.page-category.page-subcategory .subcategory-product-grid img[src*="badge_"],
    body.page-subcategory .subcategory-product-grid img[src*="badge_"],
    body.page-product-list .category-product-grid img[src*="badge_"] {
        width: 31px !important;
        min-width: 31px !important;
        max-width: 31px !important;
        height: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
        object-fit: contain !important;
        margin-left: 6px !important;
        vertical-align: baseline !important;
        position: relative !important;
        top: 2px !important;
    }

    /* -----------------------------------------
       6. Versand / Ampel: Ampel größer
       ----------------------------------------- */

    body.page-category:not(.page-item) .category-product-grid img.prodbox_liefer,
    body.page-category:not(.page-item) .category-product-grid img[src*="status_"],
    body.page-category.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-category.page-subcategory .subcategory-product-grid img[src*="status_"],
    body.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-subcategory .subcategory-product-grid img[src*="status_"],
    body.page-product-list .category-product-grid img.prodbox_liefer,
    body.page-product-list .category-product-grid img[src*="status_"] {
        width: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        height: 13px !important;
        min-height: 13px !important;
        max-height: 13px !important;
        margin-left: 7px !important;
        top: 1px !important;
    }

    body.page-category:not(.page-item) .category-shipping-link,
    body.page-category:not(.page-item) .open-shipping-modal,
    body.page-category.page-subcategory .subcategory-product-grid .category-shipping-link,
    body.page-category.page-subcategory .subcategory-product-grid .open-shipping-modal,
    body.page-subcategory .subcategory-product-grid .category-shipping-link,
    body.page-subcategory .subcategory-product-grid .open-shipping-modal,
    body.page-product-list .category-product-grid .category-shipping-link,
    body.page-product-list .category-product-grid .open-shipping-modal {
        font-size: 11.5px !important;
        line-height: 1.3 !important;
    }

    body.page-category:not(.page-item) .category-product-grid p:has(.prodbox_liefer),
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-product-list .category-product-grid p:has(.prodbox_liefer) {
        margin-top: 7px !important;
        margin-bottom: 8px !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 380px) {
    body.page-category:not(.page-item) .category-product-grid,
    body.page-category.page-subcategory .subcategory-product-grid,
    body.page-subcategory .subcategory-product-grid,
    body.page-product-list .category-product-grid {
        gap: 28px 10px !important;
    }

    body.page-category:not(.page-item) .prodbox-name,
    body.page-category:not(.page-item) .xr_s10 a,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-product-list .category-product-grid .prodbox-name,
    body.page-product-list .category-product-grid .xr_s10 a {
        font-size: 14px !important;
    }

    body.page-category:not(.page-item) .prodbox_preis span,
    body.page-category:not(.page-item) .prodbox_preis span[style],
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-subcategory .subcategory-product-grid .prodbox_preis span,
    body.page-subcategory .subcategory-product-grid .prodbox_preis span[style],
    body.page-product-list .category-product-grid .prodbox_preis span,
    body.page-product-list .category-product-grid .prodbox_preis span[style] {
        font-size: 17px !important;
    }

    body.page-category:not(.page-item) .prodbox_preis strike,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-subcategory .subcategory-product-grid .prodbox_preis strike,
    body.page-product-list .category-product-grid .prodbox_preis strike {
        font-size: 14px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V7
   show_subcategory Referenz-Finish
   =========================================================
   Basis:
   - V6 Produktkarten-Tuning
   - nur Mobile bis 760px
   - gezielt für show_subcategory als Referenz
   - keine Änderung an Desktop / Header / Sidebar / show_item

   Änderungen:
   - Textblock unter Bild 1px nach links
   - Titel minimal größer, aber einzeilig
   - Badge näher an Preis
   - Preiszeile minimal kompakter
   ========================================================= */

@media (max-width: 760px) {

    /* show_subcategory: Textblock 1px nach links */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        position: relative !important;
        left: -1px !important;
    }

    /* show_subcategory: Titel minimal größer, aber ohne Umbruch */
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        display: block !important;
        font-size: 15.5px !important;
        line-height: 1.14 !important;
        font-weight: 500 !important;
        letter-spacing: -0.018em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
    }

    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10 {
        margin-top: 10px !important;
        margin-bottom: 6px !important;
        min-height: 0 !important;
    }

    /* show_subcategory: Preiszeile kompakter, Badge näher an Preis */
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid .prodbox_preis {
        margin-top: 8px !important;
        margin-bottom: 8px !important;
        white-space: nowrap !important;
        line-height: 1.05 !important;
    }

    body.page-category.page-subcategory .subcategory-product-grid img[src*="badge_"],
    body.page-subcategory .subcategory-product-grid img[src*="badge_"] {
        margin-left: 3px !important;
        width: 31px !important;
        min-width: 31px !important;
        max-width: 31px !important;
        height: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
        top: 2px !important;
        vertical-align: baseline !important;
    }

    /* show_subcategory: Versandzeile leicht stabilisieren */
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer) {
        margin-top: 7px !important;
        margin-bottom: 10px !important;
    }
}

@media (max-width: 380px) {
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        font-size: 15px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V8
   show_subcategory Textblock-Korrektur
   =========================================================
   Korrektur zu V7:
   - Textblock unter Produktbild wirklich 1px nach rechts
   - Abstand Bild -> Titel kleiner
   - Produkttitel größer
   - Produkttitel bleibt einzeilig
   ========================================================= */

@media (max-width: 760px) {

    /* Textbereich unter dem Bild: wirklich 1px nach rechts */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        position: relative !important;
        left: 1px !important;
        transform: translateX(1px) !important;
    }

    /* Falls einzelne Textzeilen nicht innerhalb category-product-info greifen */
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer) {
        position: relative !important;
        left: 1px !important;
    }

    /* Abstand Bild -> Titel kleiner */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        margin-top: 5px !important;
    }

    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10 {
        margin-top: 5px !important;
        margin-bottom: 6px !important;
        min-height: 0 !important;
    }

    /* Titel größer, aber weiterhin einzeilig */
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        display: block !important;
        font-size: 17px !important;
        line-height: 1.12 !important;
        font-weight: 500 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
    }

    /* Hersteller / Artikelnummer optisch passend leicht größer */
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s7,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .xr_s7 {
        font-size: 12px !important;
        line-height: 1.28 !important;
    }
}

@media (max-width: 380px) {
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        font-size: 16.5px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V9
   show_subcategory Microfix Textstart / Bildabstand
   =========================================================
   Korrektur zu V8:
   - Text unter dem Bild bekommt echte 1px Innenluft
     statt optischem left/transform
   - Abstand Bild -> Titel noch etwas kleiner
   - nur show_subcategory
   ========================================================= */

@media (max-width: 760px) {

    /* Textbereich: echte 1px Innenluft rechts vom Bildrand */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        left: auto !important;
        transform: none !important;
        padding-left: 1px !important;
        box-sizing: border-box !important;
    }

    /* frühere left-Korrektur für einzelne Textzeilen neutralisieren,
       damit padding-left sauber und gleichmäßig wirkt */
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer) {
        left: auto !important;
    }

    /* Abstand Bild -> Titel noch etwas kleiner */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        margin-top: 3px !important;
    }

    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10 {
        margin-top: 3px !important;
        margin-bottom: 6px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V10
   show_subcategory sichtbarer Textstart +2px
   =========================================================
   Korrektur zu V9:
   - keine Container-Verschiebung mehr
   - alte left/transform/padding-left Versuche neutralisiert
   - sichtbare Textzeilen direkt +2px nach rechts
   - Abstand Bild -> Titel minimal kleiner
   - nur show_subcategory
   ========================================================= */

@media (max-width: 760px) {

    /* Container nicht mehr verschieben */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-info,
    body.page-subcategory .subcategory-product-grid .category-product-info {
        position: static !important;
        left: auto !important;
        transform: none !important;
        padding-left: 0 !important;
        margin-top: 2px !important;
        box-sizing: border-box !important;
    }

    /* sichtbare Textzeilen direkt einrücken */
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer) {
        position: static !important;
        left: auto !important;
        transform: none !important;
        margin-left: 2px !important;
        box-sizing: border-box !important;
    }

    /* Titel-Abstand zum Bild enger */
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .xr_s10 {
        margin-top: 2px !important;
        margin-bottom: 6px !important;
        min-height: 0 !important;
    }

    /* Titel bleibt größer und einzeilig */
    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        font-size: 17px !important;
        line-height: 1.12 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 2px) !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V11
   show_subcategory Grid-Referenz final: Text +2px weiter rechts
   =========================================================
   Korrektur zu V10:
   - sichtbare Textzeilen in show_subcategory insgesamt 4px nach rechts
   - Bild / Grid / Header / H1 nicht anfassen
   ========================================================= */

@media (max-width: 760px) {

    body.page-category.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-category.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-category.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer),
    body.page-subcategory .subcategory-product-grid .xr_s10,
    body.page-subcategory .subcategory-product-grid .prodbox_daten,
    body.page-subcategory .subcategory-product-grid .prodbox_preis,
    body.page-subcategory .subcategory-product-grid p:has(.prodbox_liefer) {
        margin-left: 4px !important;
    }

    body.page-category.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-category.page-subcategory .subcategory-product-grid .xr_s10 a,
    body.page-subcategory .subcategory-product-grid .prodbox-name,
    body.page-subcategory .subcategory-product-grid .xr_s10 a {
        max-width: calc(100% - 4px) !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V13
   show_category Produktgrid an show_subcategory-Referenz angleichen
   =========================================================
   Basis:
   - V11 bleibt Referenz für show_subcategory
   - V12/H1-Experiment NICHT enthalten
   - nur Mobile bis 760px
   - gezielt show_category Produktboxen
   - Desktop / Header / Sidebar / show_item bleiben außen vor

   Ziel:
   - show_category Produktboxen wirken wie show_subcategory
   - Textstart unter Bild identisch
   - Bild -> Titel Abstand ähnlich
   - Titelgröße / Meta / Preis / Badge / Ampel harmonisiert
   ========================================================= */

@media (max-width: 760px) {

    /* -----------------------------------------
       show_category: Bildgröße/Box wie Referenz stabilisieren
       ----------------------------------------- */

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-image,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card > a:first-child {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        aspect-ratio: 1.32 / 1 !important;
        border: 1px solid #dedede !important;
        background: #fff !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-image img,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card > a:first-child img {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        margin: 0 auto !important;
        border: 0 !important;
    }

    /* -----------------------------------------
       show_category: sichtbarer Textstart wie subcategory
       ----------------------------------------- */

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_daten,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid p:has(.prodbox_liefer) {
        margin-left: 4px !important;
        position: static !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    /* Abstand Bild -> Titel wie Referenz */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-info {
        margin-top: 2px !important;
        padding-left: 0 !important;
        left: auto !important;
        transform: none !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 {
        margin-top: 2px !important;
        margin-bottom: 6px !important;
        min-height: 0 !important;
        line-height: 1.12 !important;
    }

    /* Titel wie show_subcategory */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox-name,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 a {
        display: block !important;
        font-size: 17px !important;
        line-height: 1.12 !important;
        font-weight: 500 !important;
        letter-spacing: -0.02em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 4px) !important;
    }

    /* Meta etwas ruhiger wie Referenz */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_daten,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s7 {
        font-size: 12px !important;
        line-height: 1.28 !important;
        color: #999999 !important;
    }

    /* Preis / Badge auf show_category kompakter ausrichten */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis {
        margin-top: 8px !important;
        margin-bottom: 8px !important;
        white-space: nowrap !important;
        line-height: 1.05 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike {
        font-size: 15px !important;
        line-height: 1 !important;
        color: #777777 !important;
        font-weight: 400 !important;
        margin-right: 5px !important;
        text-decoration-thickness: 1px !important;
        text-decoration-color: #666666 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span[style] {
        font-size: 18px !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        letter-spacing: 0.01em !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="badge_"] {
        width: 31px !important;
        min-width: 31px !important;
        max-width: 31px !important;
        height: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
        object-fit: contain !important;
        margin-left: 3px !important;
        vertical-align: baseline !important;
        position: relative !important;
        top: 2px !important;
    }

    /* Versand / Ampel wie Referenz */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid p:has(.prodbox_liefer) {
        margin-top: 7px !important;
        margin-bottom: 10px !important;
        white-space: nowrap !important;
        line-height: 1.25 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img.prodbox_liefer,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="status_"] {
        width: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        height: 13px !important;
        min-height: 13px !important;
        max-height: 13px !important;
        margin-left: 7px !important;
        position: relative !important;
        top: 1px !important;
    }

    /* Kartenabstand show_category */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid {
        gap: 30px 12px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox {
        padding-bottom: 12px !important;
    }
}

@media (max-width: 380px) {
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox-name,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 a {
        font-size: 16.5px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span[style] {
        font-size: 17px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike {
        font-size: 14px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V14
   show_category Produktbox Fine-Tuning
   =========================================================
   Korrektur zu V13:
   - show_category Titel wieder kleiner
   - SALE-Badge näher an Preis
   - Abstand Versand/Ampel zur nächsten Grid-Reihe kleiner
   - show_subcategory bleibt unverändert als Referenz
   ========================================================= */

@media (max-width: 760px) {

    /* show_category: Titel etwas kleiner als V13 */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox-name,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 a {
        font-size: 15.5px !important;
        line-height: 1.14 !important;
        font-weight: 500 !important;
        letter-spacing: -0.018em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 4px) !important;
    }

    /* show_category: Badge näher an Preis */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="badge_"] {
        margin-left: 1px !important;
        top: 2px !important;
    }

    /* show_category: Preiszeile minimal kompakter */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis {
        margin-top: 7px !important;
        margin-bottom: 6px !important;
        white-space: nowrap !important;
    }

    /* show_category: Abstand Ampel/Versand zur nächsten Grid-Reihe kleiner */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid p:has(.prodbox_liefer) {
        margin-top: 5px !important;
        margin-bottom: 4px !important;
        white-space: nowrap !important;
        line-height: 1.2 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid {
        gap: 22px 12px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox {
        padding-bottom: 4px !important;
    }
}

@media (max-width: 380px) {
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox-name,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 a {
        font-size: 15px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V15
   show_category Preis-/Badge-/Gridabstand Feintuning
   =========================================================
   Korrektur zu V14:
   - SALE-Badge noch näher an Preis
   - Abstand Strike-Preis -> aktueller Preis ca. 50% kleiner
   - Abstand zur nächsten Grid-Reihe wieder etwas größer
   - nur show_category
   ========================================================= */

@media (max-width: 760px) {

    /* show_category: Abstand alter Preis -> aktueller Preis ca. 50% kleiner */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike {
        margin-right: 2px !important;
    }

    /* show_category: Badge noch näher an Preis */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="badge_"] {
        margin-left: 0 !important;
        top: 2px !important;
    }

    /* show_category: Preiszeile bleibt kompakt */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis {
        margin-top: 7px !important;
        margin-bottom: 7px !important;
        white-space: nowrap !important;
    }

    /* show_category: Abstand Versand/Ampel zur nächsten Grid-Reihe wieder etwas größer */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid p:has(.prodbox_liefer) {
        margin-top: 5px !important;
        margin-bottom: 8px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid {
        gap: 27px 12px !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox {
        padding-bottom: 8px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V16
   show_category Preisabstand wirklich enger + Badge 1px rechts
   =========================================================
   Korrektur zu V15:
   - Abstand Strike-Preis -> aktueller Preis robuster reduzieren
   - Badge wieder 1px nach rechts
   - nur show_category
   ========================================================= */

@media (max-width: 760px) {

    /* show_category: Preiszeile enger setzen, auch wenn im HTML Leerzeichen/nbsp vorkommt */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis {
        word-spacing: -2px !important;
        letter-spacing: normal !important;
        white-space: nowrap !important;
    }

    /* show_category: alter Preis ohne rechten Zusatzabstand */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike {
        margin-right: 0 !important;
        padding-right: 0 !important;
        display: inline-block !important;
    }

    /* show_category: aktueller Preis direkt nach Strike näher heranholen */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike + span,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike + span[style] {
        margin-left: -2px !important;
        padding-left: 0 !important;
        display: inline-block !important;
    }

    /* show_category: alle Preis-Spans nicht künstlich spreizen */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis span[style] {
        word-spacing: normal !important;
    }

    /* show_category: Badge 1px nach rechts gegenüber V15 */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="badge_"] {
        margin-left: 1px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V17
   show_category Preis-HTML-Fix Ergänzung
   =========================================================
   Basis:
   - V16
   - show_category.php wurde an der PHP-Preis-Ausgabe bereinigt
   - CSS hält nur noch Zielabstände stabil
   ========================================================= */

@media (max-width: 760px) {

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis {
        word-spacing: normal !important;
        white-space: nowrap !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike {
        margin-right: 3px !important;
        padding-right: 0 !important;
        display: inline-block !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike + span,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox_preis strike + span[style] {
        margin-left: 0 !important;
        padding-left: 0 !important;
        display: inline-block !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="badge_"] {
        margin-left: 2px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V18
   show_updates Produktgrid Feintuning
   =========================================================
   Basis:
   - V17 show_category Preis-HTML-Fix bleibt erhalten
   - show_subcategory bleibt Referenz
   - nur Mobile bis 760px

   Änderungen:
   - show_updates Textblock unter Bild einrücken
   - show_updates Ampel 1px höher
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: sichtbare Textzeilen wie Referenz einrücken */
    body.page-product-list.page-updates .category-product-grid .xr_s10,
    body.page-product-list.page-updates .category-product-grid .prodbox_daten,
    body.page-product-list.page-updates .category-product-grid .prodbox_preis,
    body.page-product-list.page-updates .category-product-grid p:has(.prodbox_liefer) {
        margin-left: 4px !important;
        position: static !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    body.page-product-list.page-updates .category-product-grid .category-product-info {
        margin-top: 2px !important;
        padding-left: 0 !important;
        left: auto !important;
        transform: none !important;
    }

    /* show_updates: Titel einzeilig wie Referenz */
    body.page-product-list.page-updates .category-product-grid .prodbox-name,
    body.page-product-list.page-updates .category-product-grid .xr_s10 a {
        display: block !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 4px) !important;
    }

    /* show_updates: Ampel 1px höher */
    body.page-product-list.page-updates .category-product-grid img.prodbox_liefer,
    body.page-product-list.page-updates .category-product-grid img[src*="status_"] {
        position: relative !important;
        top: 0 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V19
   Ampel bei category / subcategory / updates 1px höher
   =========================================================
   Basis:
   - V18 show_updates Grid Tune
   - show_category Preis-HTML-Fix bleibt erhalten
   - show_subcategory Referenz bleibt erhalten

   Änderung:
   - Ampel 1px höher bei:
     show_category
     show_subcategory
     show_updates

   Nicht betroffen:
   - show_bestseller
   - search_result
   - show_item
   - Desktop
   ========================================================= */

@media (max-width: 760px) {

    /* show_category: Ampel 1px höher */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img.prodbox_liefer,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid img[src*="status_"] {
        position: relative !important;
        top: 0 !important;
    }

    /* show_subcategory: Ampel 1px höher */
    body.page-category.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-category.page-subcategory .subcategory-product-grid img[src*="status_"],
    body.page-subcategory .subcategory-product-grid img.prodbox_liefer,
    body.page-subcategory .subcategory-product-grid img[src*="status_"] {
        position: relative !important;
        top: 0 !important;
    }

    /* show_updates: Ampel 1px höher */
    body.page-product-list.page-updates .category-product-grid img.prodbox_liefer,
    body.page-product-list.page-updates .category-product-grid img[src*="status_"] {
        position: relative !important;
        top: -1px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V20
   show_updates Spacing Tune
   =========================================================
   Basis:
   - V19 Ampel Tune

   Änderungen nur show_updates:
   - Abstand Titel -> Hersteller kleiner
   - Abstand Versandkosten -> Ampel kleiner
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: Abstand Titel -> Hersteller kleiner */
    body.page-product-list.page-updates .category-product-grid .xr_s10 {
        margin-bottom: 3px !important;
    }

    body.page-product-list.page-updates .category-product-grid .prodbox_daten {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        line-height: 1.22 !important;
    }

    /* show_updates: Versandkosten und Ampel näher zusammen */
    body.page-product-list.page-updates .category-product-grid .category-shipping-link,
    body.page-product-list.page-updates .category-product-grid .open-shipping-modal {
        margin-right: 0 !important;
        padding-right: 0 !important;
    }

    body.page-product-list.page-updates .category-product-grid .ampel-link {
        margin-left: 1px !important;
        padding-left: 0 !important;
    }

    body.page-product-list.page-updates .category-product-grid img.prodbox_liefer,
    body.page-product-list.page-updates .category-product-grid img[src*="status_"] {
        margin-left: 2px !important;
    }

    body.page-product-list.page-updates .category-product-grid p:has(.prodbox_liefer) {
        word-spacing: -1px !important;
        white-space: nowrap !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V22
   show_updates Titelabstand per HTML-Fix, ohne Font-Shrink
   =========================================================
   Basis:
   - V20, NICHT V21
   - V21 wurde verworfen, weil Hersteller/Artikel kleiner wurden

   Änderung:
   - show_updates Titel-p wird in show_updates.php kompakter gesetzt
   - CSS nur zur Absicherung, ohne Schriftgrößen zu verkleinern
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: keine kleinere Hersteller-/Artikel-Schrift erzwingen */
    body.page-product-list.page-updates .category-product-grid .prodbox_daten,
    body.page-product-list.page-updates .category-product-grid p.prodbox_daten {
        font-size: inherit !important;
        line-height: inherit !important;
    }

    /* show_updates: Titelblock kompakt, aber ohne Fontsize-Eingriff */
    body.page-product-list.page-updates .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 2px !important;
        padding-bottom: 0 !important;
        min-height: 0 !important;
    }

    body.page-product-list.page-updates .category-product-grid p.xr_s10 a.prodbox-name {
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V23
   show_updates Hersteller/Artikelnummer Font-Match
   =========================================================
   Korrektur zu V22:
   - V22 setzte prodbox_daten auf font-size: inherit
   - dadurch wurde Hersteller/Artikelnummer zu groß
   - jetzt wieder wie category/subcategory klein/kompakt
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: Hersteller/Artikelnummer wieder wie category/subcategory */
    body.page-product-list.page-updates .category-product-grid .prodbox_daten,
    body.page-product-list.page-updates .category-product-grid p.prodbox_daten,
    body.page-product-list.page-updates .category-product-grid .xr_s7.prodbox_daten {
        font-size: 12px !important;
        line-height: 1.22 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* show_updates: Titelabstand kompakt beibehalten */
    body.page-product-list.page-updates .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 2px !important;
        min-height: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V24
   show_updates Titel -> Hersteller Abstand wie Referenz
   =========================================================
   Basis:
   - V23 show_updates Font Match

   Änderung:
   - Hersteller/Artikel-Schrift bleibt kompakt wie category/subcategory
   - Titel -> Hersteller bekommt wieder kleinen Referenz-Abstand
   - nicht 0px, aber deutlich kleiner als vor V22
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: Titelblock nicht komplett an Hersteller kleben lassen */
    body.page-product-list.page-updates .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 5px !important;
        min-height: 18px !important;
        padding-bottom: 0 !important;
        line-height: 1.14 !important;
    }

    body.page-product-list.page-updates .category-product-grid p.xr_s10 a.prodbox-name {
        line-height: 1.14 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* show_updates: Hersteller/Artikel bleibt wie category/subcategory kompakt */
    body.page-product-list.page-updates .category-product-grid .prodbox_daten,
    body.page-product-list.page-updates .category-product-grid p.prodbox_daten,
    body.page-product-list.page-updates .category-product-grid .xr_s7.prodbox_daten {
        font-size: 12px !important;
        line-height: 1.22 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V25
   show_updates Bild -> Titel Abstand + Bildrahmen
   =========================================================
   Basis:
   - V24 show_updates Titelabstand wie Referenz

   Änderungen nur show_updates:
   - Abstand Bildbox -> Titel größer
   - Bildrahmen gleichmäßig, kein dickerer unterer Rand
   - kein künstlicher Schatten
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: Abstand Bild -> Titel wie Referenz, etwas luftiger */
    body.page-product-list.page-updates .category-product-grid .category-product-info {
        margin-top: 8px !important;
        padding-top: 0 !important;
    }

    /* show_updates: Bildbox sauber gleichmäßig rahmen */
    body.page-product-list.page-updates .category-product-grid .category-product-image {
        border: 1px solid #dedede !important;
        border-bottom-width: 1px !important;
        box-shadow: none !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    body.page-product-list.page-updates .category-product-grid .category-product-image img {
        display: block !important;
        margin: 0 auto !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* show_updates: Titelabstand zu Hersteller aus V24 beibehalten */
    body.page-product-list.page-updates .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 5px !important;
        min-height: 18px !important;
        padding-bottom: 0 !important;
    }

    /* show_updates: Hersteller/Artikel bleibt kompakt */
    body.page-product-list.page-updates .category-product-grid .prodbox_daten,
    body.page-product-list.page-updates .category-product-grid p.prodbox_daten,
    body.page-product-list.page-updates .category-product-grid .xr_s7.prodbox_daten {
        font-size: 12px !important;
        line-height: 1.22 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V26
   show_updates Bild-Hover/Bildrahmen Fix
   =========================================================
   Basis:
   - V25 show_updates Bild-Titel-Abstand + Rahmen

   Ursache:
   - .category-product-image ist ein <a>
   - bestehende Link-Hover-Regeln erzeugen unten einen roten/dicken Rand

   Änderung nur show_updates:
   - Hover-/Focus-/Active-Unterstrich am Bildlink neutralisiert
   - Bildrahmen bleibt überall gleichmäßig 1px
   - kein Schatten, kein roter Bottom-Border
   ========================================================= */

@media (max-width: 760px) {

    /* show_updates: Bildlink darf keinen Link-Hover-Unterstrich/Bottomborder bekommen */
    body.page-product-list.page-updates .category-product-grid a.category-product-image,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:link,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:visited,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:focus,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:active {
        border: 1px solid #dedede !important;
        border-top-width: 1px !important;
        border-right-width: 1px !important;
        border-bottom-width: 1px !important;
        border-left-width: 1px !important;
        border-color: #dedede !important;
        border-bottom-color: #dedede !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
    }

    /* show_updates: falls globale a:hover-Regel über border-bottom arbeitet */
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover {
        border-bottom: 1px solid #dedede !important;
        color: inherit !important;
    }

    /* show_updates: Bild selbst nie mit Border/Hover-Effekt */
    body.page-product-list.page-updates .category-product-grid a.category-product-image img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:focus img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:active img {
        border: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V27
   show_updates Bildrahmen/Hover Hard-Fix
   =========================================================
   Basis:
   - V26

   Ursache:
   - Der rote Strich kommt nicht nur von a:hover,
     sondern wahrscheinlich von Card-Hover oder border-bottom.
   - Der dicke graue untere Rand kommt zusätzlich durch Link-
     Zeilenhöhe/Baseline-Fläche.

   Änderung nur show_updates:
   - Card-Hover auf Bildbox neutralisiert
   - Link-Hover/Focus/Active neutralisiert
   - border-bottom rot hart überschrieben
   - line-height/font-size auf Bildlink 0 gegen Baseline-Lücke
   - Bildbox bleibt gleichmäßiger 1px Rahmen
   ========================================================= */

@media (max-width: 760px) {

    body.page-product-list.page-updates .category-product-grid .category-product-card .category-product-image,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover .category-product-image,
    body.page-product-list.page-updates .category-product-grid .category-product-card:focus-within .category-product-image,
    body.page-product-list.page-updates .category-product-grid a.category-product-image,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:focus,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:active,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:visited {
        display: block !important;
        box-sizing: border-box !important;
        line-height: 0 !important;
        font-size: 0 !important;
        border-style: solid !important;
        border-width: 1px !important;
        border-top-width: 1px !important;
        border-right-width: 1px !important;
        border-bottom-width: 1px !important;
        border-left-width: 1px !important;
        border-color: #dedede !important;
        border-top-color: #dedede !important;
        border-right-color: #dedede !important;
        border-bottom-color: #dedede !important;
        border-left-color: #dedede !important;
        border-bottom: 1px solid #dedede !important;
        box-shadow: none !important;
        outline: none !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    /* Falls eine globale Hover-Regel mit inset-shadow oder after/before arbeitet */
    body.page-product-list.page-updates .category-product-grid .category-product-card .category-product-image::before,
    body.page-product-list.page-updates .category-product-grid .category-product-card .category-product-image::after,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover .category-product-image::before,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover .category-product-image::after,
    body.page-product-list.page-updates .category-product-grid a.category-product-image::before,
    body.page-product-list.page-updates .category-product-grid a.category-product-image::after,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover::before,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover::after {
        content: none !important;
        display: none !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.page-product-list.page-updates .category-product-grid .category-product-card .category-product-image img,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover .category-product-image img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:focus img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:active img {
        display: block !important;
        margin: 0 auto !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
        text-decoration: none !important;
        vertical-align: top !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V28
   show_subcategory Mobile Hover/Bildrahmen Fix
   =========================================================
   Basis:
   - V27 show_updates Bildrahmen/Hover Hard-Fix

   Änderung:
   - show_subcategory Mobile bekommt keinen roten Bild-Hover
   - Desktop-Hover bleibt über PHP-Guard erhalten
   - Mobile-Rahmen bleibt gleichmäßig 1px
   ========================================================= */

@media (max-width: 760px) {

    /* show_subcategory: Bildlink/Bildbox auf Mobile ohne roten Hover-Rand */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image:hover,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-card:hover .category-product-image,
    body.page-subcategory .subcategory-product-grid .category-product-image,
    body.page-subcategory .subcategory-product-grid .category-product-image:hover,
    body.page-subcategory .subcategory-product-grid .category-product-card:hover .category-product-image {
        border: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
    }

    /* show_subcategory: eigentlicher Bildrahmen auf Mobile stabil und gleichmäßig */
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image img,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-image:hover img,
    body.page-category.page-subcategory .subcategory-product-grid .category-product-card:hover .category-product-image img,
    body.page-subcategory .subcategory-product-grid .category-product-image img,
    body.page-subcategory .subcategory-product-grid .category-product-image:hover img,
    body.page-subcategory .subcategory-product-grid .category-product-card:hover .category-product-image img {
        border: 1px solid #dedede !important;
        border-top-width: 1px !important;
        border-right-width: 1px !important;
        border-bottom-width: 1px !important;
        border-left-width: 1px !important;
        border-color: #dedede !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V29
   Mobile Produktlisten: Bild nur mit Unterlinie
   =========================================================
   Basis:
   - V28

   Design-Entscheidung:
   - Mobil kein kompletter Kastenrahmen mehr um Produktbilder
   - nur eine dezente untere Linie als optischer Abschluss
   - wirkt ruhiger/moderner und verhindert Hover-Rahmen-Artefakte

   Gilt mobil für:
   - show_category
   - show_subcategory
   - show_updates
   - show_bestseller
   - search_result

   Nicht betroffen:
   - show_item
   - Desktop
   - Header
   - Sidebar
   ========================================================= */

@media (max-width: 760px) {

    /* Alle mobilen Produktlisten: Bildbox selbst ohne Kastenrahmen */
    body.page-category:not(.page-item) .category-product-grid .category-product-image,
    body.page-category:not(.page-item) .category-product-grid .category-product-image:hover,
    body.page-category:not(.page-item) .category-product-grid .category-product-card:hover .category-product-image,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image:hover,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-card:hover .category-product-image,
    body.page-product-list .category-product-grid .category-product-image,
    body.page-product-list .category-product-grid .category-product-image:hover,
    body.page-product-list .category-product-grid .category-product-card:hover .category-product-image {
        display: block !important;
        box-sizing: border-box !important;
        border: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    /* Alle mobilen Produktlisten: Bild selbst ohne Rahmen, nur Bildbox-Unterlinie bleibt */
    body.page-category:not(.page-item) .category-product-grid .category-product-image img,
    body.page-category:not(.page-item) .category-product-grid .category-product-image:hover img,
    body.page-category:not(.page-item) .category-product-grid .category-product-card:hover .category-product-image img,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image img,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image:hover img,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-card:hover .category-product-image img,
    body.page-product-list .category-product-grid .category-product-image img,
    body.page-product-list .category-product-grid .category-product-image:hover img,
    body.page-product-list .category-product-grid .category-product-card:hover .category-product-image img {
        border: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        display: block !important;
        margin: 0 auto !important;
        vertical-align: top !important;
    }

    /* Mobile: rote Hover-Unterlinie/Rahmen komplett vermeiden */
    body.page-category:not(.page-item) .category-product-grid .category-product-image:hover,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image:hover,
    body.page-product-list .category-product-grid .category-product-image:hover {
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
    }

    /* Pseudo-Hover-Reste neutralisieren */
    body.page-category:not(.page-item) .category-product-grid .category-product-image::before,
    body.page-category:not(.page-item) .category-product-grid .category-product-image::after,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image::before,
    body.page-category:not(.page-item) .subcategory-product-grid .category-product-image::after,
    body.page-product-list .category-product-grid .category-product-image::before,
    body.page-product-list .category-product-grid .category-product-image::after {
        content: none !important;
        display: none !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V30
   Bild-Unterlinie stärker für show_category + show_updates
   =========================================================
   Korrektur zu V29:
   - V29 war bei show_category/show_updates zu allgemein
   - ältere spezifischere Regeln mit !important haben gewonnen
   - diese Regeln stehen bewusst ganz unten und sind stärker
   ========================================================= */

@media (max-width: 760px) {

    /* show_category: kompletter Bildrahmen weg, nur Unterlinie */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image:hover,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card:hover a.category-product-image,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image:focus,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image:active {
        display: block !important;
        box-sizing: border-box !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image img,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image:hover img,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card:hover a.category-product-image img {
        border: 0 !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        display: block !important;
        margin: 0 auto !important;
        vertical-align: top !important;
    }

    /* show_updates: ältere V25/V27-Rahmenregeln überschreiben */
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image:hover,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover a.category-product-image,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image:focus,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image:active,
    body.page-product-list.page-updates .category-product-grid a.category-product-image,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:focus,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:active {
        display: block !important;
        box-sizing: border-box !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image img,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image:hover img,
    body.page-product-list.page-updates .category-product-grid .category-product-card:hover a.category-product-image img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image img,
    body.page-product-list.page-updates .category-product-grid a.category-product-image:hover img {
        border: 0 !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        display: block !important;
        margin: 0 auto !important;
        vertical-align: top !important;
    }

    /* show_category + show_updates: pseudo-hover-Reste endgültig neutralisieren */
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image::before,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-card a.category-product-image::after,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image::before,
    body.page-product-list.page-updates .category-product-grid .category-product-card a.category-product-image::after {
        content: none !important;
        display: none !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V31
   show_bestseller Grid Tune
   =========================================================
   Basis:
   - V30 Mobile Bild-Unterlinie stärker

   Ableitung:
   - show_bestseller wird an die funktionierenden
     show_updates/category/subcategory Abstände angeglichen

   Änderungen nur show_bestseller:
   - Textblock unter Bild einrücken
   - Abstand Titel -> Hersteller kontrolliert setzen
   - Abstand Versandkosten -> Ampel kleiner
   - Hersteller/Artikelnummer kompakt wie Referenz
   - Bild-Unterlinie aus V30 bleibt erhalten
   ========================================================= */

@media (max-width: 760px) {

    /* show_bestseller: sichtbare Textzeilen wie Referenz einrücken */
    body.page-product-list.page-bestseller .category-product-grid .xr_s10,
    body.page-product-list.page-bestseller .category-product-grid p.xr_s10,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_daten,
    body.page-product-list.page-bestseller .category-product-grid p.prodbox_daten,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis,
    body.page-product-list.page-bestseller .category-product-grid p:has(.prodbox_liefer),
    body.page-product-list.page-bestseller .category-product-grid .xr_s7:has(.prodbox_liefer) {
        margin-left: 4px !important;
        position: static !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .category-product-info {
        margin-top: 8px !important;
        padding-top: 0 !important;
        padding-left: 0 !important;
        left: auto !important;
        transform: none !important;
    }

    /* show_bestseller: Titel -> Hersteller wie Updates-Referenz */
    body.page-product-list.page-bestseller .category-product-grid .xr_s10,
    body.page-product-list.page-bestseller .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 5px !important;
        min-height: 18px !important;
        padding-bottom: 0 !important;
        line-height: 1.14 !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .xr_s10 a,
    body.page-product-list.page-bestseller .category-product-grid .prodbox-name {
        display: block !important;
        line-height: 1.14 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 4px) !important;
    }

    /* show_bestseller: Hersteller/Artikelnummer kompakt wie Referenz */
    body.page-product-list.page-bestseller .category-product-grid .prodbox_daten,
    body.page-product-list.page-bestseller .category-product-grid p.prodbox_daten,
    body.page-product-list.page-bestseller .category-product-grid .xr_s7.prodbox_daten {
        font-size: 12px !important;
        line-height: 1.22 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* show_bestseller: Preiszeile wie Referenz eingerückt/kompakt */
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis {
        margin-top: 7px !important;
        margin-bottom: 7px !important;
        white-space: nowrap !important;
    }

    /* show_bestseller: Badge nah am Preis */
    body.page-product-list.page-bestseller .category-product-grid img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid img.update-badge {
        margin-left: 2px !important;
        vertical-align: middle !important;
    }

    /* show_bestseller: Versandkosten und Ampel näher zusammen */
    body.page-product-list.page-bestseller .category-product-grid .category-shipping-link,
    body.page-product-list.page-bestseller .category-product-grid .open-shipping-modal {
        margin-right: 0 !important;
        padding-right: 0 !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .ampel-link {
        margin-left: 1px !important;
        padding-left: 0 !important;
    }

    body.page-product-list.page-bestseller .category-product-grid img.prodbox_liefer,
    body.page-product-list.page-bestseller .category-product-grid img[src*="status_"] {
        position: relative !important;
        top: -1px !important;
        margin-left: 2px !important;
    }

    body.page-product-list.page-bestseller .category-product-grid p:has(.prodbox_liefer),
    body.page-product-list.page-bestseller .category-product-grid .xr_s7:has(.prodbox_liefer) {
        word-spacing: -1px !important;
        white-space: nowrap !important;
        margin-top: 5px !important;
        margin-bottom: 8px !important;
    }

    /* show_bestseller: Bildunterlinie mobil stärker absichern */
    body.page-product-list.page-bestseller .category-product-grid .category-product-card a.category-product-image,
    body.page-product-list.page-bestseller .category-product-grid .category-product-card a.category-product-image:hover,
    body.page-product-list.page-bestseller .category-product-grid .category-product-card:hover a.category-product-image,
    body.page-product-list.page-bestseller .category-product-grid a.category-product-image,
    body.page-product-list.page-bestseller .category-product-grid a.category-product-image:hover {
        display: block !important;
        box-sizing: border-box !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .category-product-card a.category-product-image img,
    body.page-product-list.page-bestseller .category-product-grid .category-product-card a.category-product-image:hover img,
    body.page-product-list.page-bestseller .category-product-grid .category-product-card:hover a.category-product-image img,
    body.page-product-list.page-bestseller .category-product-grid a.category-product-image img,
    body.page-product-list.page-bestseller .category-product-grid a.category-product-image:hover img {
        border: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        display: block !important;
        margin: 0 auto !important;
        vertical-align: top !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V32
   show_bestseller Badge Align
   =========================================================
   Korrektur zu V31:
   - show_bestseller Badge erbte aus allgemeiner Produktlisten-Regel:
     position: relative; top: 2px; vertical-align: baseline;
   - Dadurch saß das Badge tiefer als bei den Referenzseiten.

   Änderung nur show_bestseller:
   - top zurücksetzen
   - vertikale Ausrichtung am Preis korrigieren
   - Badge-Abstand zum Preis kompakt beibehalten
   ========================================================= */

@media (max-width: 760px) {

    body.page-product-list.page-bestseller .category-product-grid img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid img.update-badge,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img.update-badge {
        position: relative !important;
        top: 0 !important;
        margin-left: 2px !important;
        vertical-align: middle !important;
        transform: none !important;
    }

    /* Falls der Preistext wegen line-height anders sitzt, Badge optisch stabil halten */
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis {
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V33
   show_bestseller Badge deutlich nach oben
   =========================================================
   Korrektur zu V32:
   - top:0 hatte optisch keine ausreichende Wirkung
   - Badge wird nun bewusst negativ nach oben gesetzt

   Änderung nur show_bestseller:
   - Badge top: -3px
   ========================================================= */

@media (max-width: 760px) {

    body.page-product-list.page-bestseller .category-product-grid img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid img.update-badge,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img.update-badge,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis span img.update-badge {
        position: relative !important;
        top: -3px !important;
        margin-left: 2px !important;
        vertical-align: middle !important;
        transform: none !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis {
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V34
   show_bestseller Badge oben am Preis ausrichten
   =========================================================
   Korrektur zu V33:
   - V33 setzte das Badge mittig zum Preis
   - gewünscht: Badge wie bei den anderen Seiten oben am Preis

   Änderung nur show_bestseller:
   - vertical-align: top
   - top stärker negativ
   ========================================================= */

@media (max-width: 760px) {

    body.page-product-list.page-bestseller .category-product-grid img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid img.update-badge,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img.update-badge,
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis span img.update-badge {
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
    }

    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis {
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V35
   search_result Grid Tune
   =========================================================
   Basis:
   - V34 show_bestseller Badge Top Align

   Änderungen nur search_result:
   - Textblock unter Bild einrücken
   - Abstand Titel -> Hersteller kontrolliert kleiner
   - Abstand Versandkosten -> Ampel kleiner
   - Hersteller/Artikelnummer kompakt wie Referenz
   - Bild-Unterlinie mobil abgesichert
   ========================================================= */

@media (max-width: 760px) {

    /* search_result: sichtbare Textzeilen wie Referenz einrücken */
    body.page-product-list.page-search-results .category-product-grid .xr_s10,
    body.page-product-list.page-search-results .category-product-grid p.xr_s10,
    body.page-product-list.page-search-results .category-product-grid .prodbox_daten,
    body.page-product-list.page-search-results .category-product-grid p.prodbox_daten,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis,
    body.page-product-list.page-search-results .category-product-grid p:has(.prodbox_liefer),
    body.page-product-list.page-search-results .category-product-grid .xr_s7:has(.prodbox_liefer) {
        margin-left: 4px !important;
        position: static !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    body.page-product-list.page-search-results .category-product-grid .category-product-info {
        margin-top: 8px !important;
        padding-top: 0 !important;
        padding-left: 0 !important;
        left: auto !important;
        transform: none !important;
    }

    /* search_result: Abstand Titel -> Hersteller wie Referenz */
    body.page-product-list.page-search-results .category-product-grid .xr_s10,
    body.page-product-list.page-search-results .category-product-grid p.xr_s10 {
        margin-top: 0 !important;
        margin-bottom: 5px !important;
        min-height: 18px !important;
        padding-bottom: 0 !important;
        line-height: 1.14 !important;
    }

    body.page-product-list.page-search-results .category-product-grid .xr_s10 a,
    body.page-product-list.page-search-results .category-product-grid .prodbox-name {
        display: block !important;
        line-height: 1.14 !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: calc(100% - 4px) !important;
    }

    /* search_result: Hersteller/Artikelnummer kompakt wie Referenz */
    body.page-product-list.page-search-results .category-product-grid .prodbox_daten,
    body.page-product-list.page-search-results .category-product-grid p.prodbox_daten,
    body.page-product-list.page-search-results .category-product-grid .xr_s7.prodbox_daten {
        font-size: 12px !important;
        line-height: 1.22 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* search_result: Preiszeile kompakt */
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis {
        margin-top: 7px !important;
        margin-bottom: 7px !important;
        white-space: nowrap !important;
    }

    /* search_result: Badge nah am Preis und oben passend */
    body.page-product-list.page-search-results .category-product-grid img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid img.update-badge,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img.update-badge {
        position: relative !important;
        top: -1px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
    }

    /* search_result: Versandkosten und Ampel näher zusammen */
    body.page-product-list.page-search-results .category-product-grid .category-shipping-link,
    body.page-product-list.page-search-results .category-product-grid .open-shipping-modal {
        margin-right: 0 !important;
        padding-right: 0 !important;
    }

    body.page-product-list.page-search-results .category-product-grid .ampel-link {
        margin-left: 1px !important;
        padding-left: 0 !important;
    }

    body.page-product-list.page-search-results .category-product-grid img.prodbox_liefer,
    body.page-product-list.page-search-results .category-product-grid img[src*="status_"] {
        position: relative !important;
        top: -1px !important;
        margin-left: 2px !important;
    }

    body.page-product-list.page-search-results .category-product-grid p:has(.prodbox_liefer),
    body.page-product-list.page-search-results .category-product-grid .xr_s7:has(.prodbox_liefer) {
        word-spacing: -1px !important;
        white-space: nowrap !important;
        margin-top: 5px !important;
        margin-bottom: 8px !important;
    }

    /* search_result: Bildunterlinie mobil stärker absichern */
    body.page-product-list.page-search-results .category-product-grid .category-product-card a.category-product-image,
    body.page-product-list.page-search-results .category-product-grid .category-product-card a.category-product-image:hover,
    body.page-product-list.page-search-results .category-product-grid .category-product-card:hover a.category-product-image,
    body.page-product-list.page-search-results .category-product-grid a.category-product-image,
    body.page-product-list.page-search-results .category-product-grid a.category-product-image:hover {
        display: block !important;
        box-sizing: border-box !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    body.page-product-list.page-search-results .category-product-grid .category-product-card a.category-product-image img,
    body.page-product-list.page-search-results .category-product-grid .category-product-card a.category-product-image:hover img,
    body.page-product-list.page-search-results .category-product-grid .category-product-card:hover a.category-product-image img,
    body.page-product-list.page-search-results .category-product-grid a.category-product-image img,
    body.page-product-list.page-search-results .category-product-grid a.category-product-image:hover img {
        border: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        display: block !important;
        margin: 0 auto !important;
        vertical-align: top !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V36
   search_result Preis-/Badge-Fix
   =========================================================
   Basis:
   - V35 search_result Grid Tune

   Änderungen nur search_result:
   - Abstand Strike-Preis -> aktueller Preis reduziert
   - Badge oben am Preis ausrichten
   - Badge-Abstand zum Preis kompakt halten
   ========================================================= */

@media (max-width: 760px) {

    body.page-product-list.page-search-results .category-product-grid img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid img.update-badge,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img.update-badge,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis span img.update-badge {
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
    }

    body.page-product-list.page-search-results .category-product-grid .prodbox_preis {
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        word-spacing: normal !important;
    }

    body.page-product-list.page-search-results .category-product-grid .prodbox_preis strike {
        margin-right: 3px !important;
        padding-right: 0 !important;
        display: inline-block !important;
    }

    body.page-product-list.page-search-results .category-product-grid .prodbox_preis strike + span,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis strike + span[style] {
        margin-left: 0 !important;
        padding-left: 0 !important;
        display: inline-block !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V37
   show_subcategory Zusatzprodukte / Alternatives Mobile
   =========================================================
   Basis:
   - V36 search_result Preis-/Badge-Fix

   Design-Entscheidung:
   - Zusatzprodukte bleiben mobil bewusst groß
   - Nach langem Scrollen wirkt das ruhiger als ein weiteres
     kleines 2-Spalten-Raster
   - Hauptgrid bleibt unverändert

   Änderungen nur show_subcategory / .subcategory-alternatives:
   - große 1-Spalten-Karten mobil
   - Bild großzügig, aber sauber gerahmt
   - Abstand Überschrift / Linie / Cards beruhigt
   - Name + Badge kompakt unter dem Bild
   ========================================================= */

@media (max-width: 760px) {

    body.page-category.page-subcategory .subcategory-alternatives,
    body.page-subcategory .subcategory-alternatives {
        margin-top: 26px !important;
        padding-top: 0 !important;
        clear: both !important;
    }

    body.page-category.page-subcategory .subcategory-alternatives-header,
    body.page-subcategory .subcategory-alternatives-header {
        margin: 0 0 18px 0 !important;
        padding: 18px 0 0 0 !important;
        border-top: 1px solid #e5e5e5 !important;
    }

    body.page-category.page-subcategory .subcategory-alternatives-header p,
    body.page-subcategory .subcategory-alternatives-header p {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 18px !important;
        line-height: 1.45 !important;
        font-weight: 300 !important;
        color: #777 !important;
        letter-spacing: -0.02em !important;
    }

    body.page-category.page-subcategory .subcategory-alternatives-header strong,
    body.page-subcategory .subcategory-alternatives-header strong {
        color: #222 !important;
        font-weight: 400 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-grid,
    body.page-subcategory .subcategory-alternative-grid {
        display: block !important;
        grid-template-columns: none !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-card,
    body.page-subcategory .subcategory-alternative-card {
        display: block !important;
        width: 100% !important;
        margin: 0 0 30px 0 !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-image,
    body.page-subcategory .subcategory-alternative-image {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 0 12px 0 !important;
        padding: 0 !important;
        border: 1px solid #e0e0e0 !important;
        border-bottom-color: #d4d4d4 !important;
        background: #fff !important;
        box-shadow: none !important;
        text-decoration: none !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-image:hover,
    body.page-subcategory .subcategory-alternative-image:hover {
        border-color: #e0e0e0 !important;
        border-bottom-color: #d4d4d4 !important;
        box-shadow: none !important;
        text-decoration: none !important;
        outline: 0 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-image img,
    body.page-category.page-subcategory .subcategory-alternative-image:hover img,
    body.page-subcategory .subcategory-alternative-image img,
    body.page-subcategory .subcategory-alternative-image:hover img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        border: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        vertical-align: top !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-info,
    body.page-subcategory .subcategory-alternative-info {
        display: block !important;
        margin: 0 !important;
        padding: 0 2px !important;
        min-height: 0 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-name,
    body.page-subcategory .subcategory-alternative-name {
        display: block !important;
        margin: 0 0 6px 0 !important;
        padding: 0 !important;
        font-size: 17px !important;
        line-height: 1.22 !important;
        font-weight: 400 !important;
        color: #111 !important;
        text-decoration: none !important;
        letter-spacing: -0.02em !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-name:hover,
    body.page-subcategory .subcategory-alternative-name:hover {
        color: #111 !important;
        text-decoration: none !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-badge,
    body.page-subcategory .subcategory-alternative-badge {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-badge img,
    body.page-subcategory .subcategory-alternative-badge img {
        display: inline-block !important;
        width: 33px !important;
        height: 19px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        vertical-align: top !important;
        position: static !important;
        transform: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V38
   Zusatzprodukte: Bild-Unterlinie + Badge hinter Titel
   + mobile Badge-Normalisierung
   =========================================================
   Basis:
   - V37 show_subcategory Zusatzprodukte mobil

   Änderungen:
   - show_subcategory Zusatzprodukte:
     Bild nur mit Unterlinie, kein kompletter Rahmen
   - Badge direkt hinter den Titel
   - Mobile Badges in Produktlisten natürlicher/kompakter
     statt gestreckt wirkend

   Nicht betroffen:
   - Desktop
   - show_item
   - Header
   - Sidebar
   ========================================================= */

@media (max-width: 760px) {

    /* -----------------------------------------------------
       Zusatzprodukte show_subcategory:
       Bildrahmen konsequent wie Hauptgrids: nur Unterlinie
       ----------------------------------------------------- */
    body.page-category.page-subcategory .subcategory-alternative-image,
    body.page-category.page-subcategory .subcategory-alternative-image:hover,
    body.page-subcategory .subcategory-alternative-image,
    body.page-subcategory .subcategory-alternative-image:hover {
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
        border-color: transparent !important;
        border-bottom-color: #d9d9d9 !important;
        box-shadow: none !important;
        outline: 0 !important;
        text-decoration: none !important;
        background: #fff !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-image img,
    body.page-category.page-subcategory .subcategory-alternative-image:hover img,
    body.page-subcategory .subcategory-alternative-image img,
    body.page-subcategory .subcategory-alternative-image:hover img {
        border: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        vertical-align: top !important;
    }

    /* -----------------------------------------------------
       Zusatzprodukte: Badge hinter Titel, nicht darunter
       ----------------------------------------------------- */
    body.page-category.page-subcategory .subcategory-alternative-info,
    body.page-subcategory .subcategory-alternative-info {
        display: block !important;
        margin: 0 !important;
        padding: 0 2px !important;
        white-space: normal !important;
        line-height: 1.2 !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-name,
    body.page-subcategory .subcategory-alternative-name {
        display: inline !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 17px !important;
        line-height: 1.22 !important;
        font-weight: 400 !important;
        color: #111 !important;
        text-decoration: none !important;
        letter-spacing: -0.02em !important;
        vertical-align: baseline !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-badge,
    body.page-subcategory .subcategory-alternative-badge {
        display: inline-block !important;
        margin: 0 0 0 6px !important;
        padding: 0 !important;
        line-height: 1 !important;
        vertical-align: -2px !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-badge img,
    body.page-subcategory .subcategory-alternative-badge img {
        display: inline-block !important;
        width: 33px !important;
        height: 19px !important;
        max-width: 33px !important;
        max-height: 19px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        object-fit: contain !important;
        vertical-align: top !important;
        position: static !important;
        top: auto !important;
        transform: none !important;
    }

    /* -----------------------------------------------------
       Mobile Badge-Normalisierung für alle Produktlisten:
       natürlicher, kompakter Look wie Zusatzprodukte
       ----------------------------------------------------- */
    body.page-category:not(.page-item) .category-product-grid img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid img.update-badge,
    body.page-product-list .category-product-grid img[src*="badge_"],
    body.page-product-list .category-product-grid img.update-badge {
        width: 33px !important;
        height: 19px !important;
        max-width: 33px !important;
        max-height: 19px !important;
        object-fit: contain !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Badges in Preiszeilen: nahe am Preis, aber nicht gestreckt */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge {
        margin-left: 3px !important;
        vertical-align: top !important;
    }

    /* spezifische Top-Ausrichtungen aus den Einzel-Fixes beibehalten */
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-bestseller .category-product-grid .prodbox_preis img.update-badge,
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list.page-search-results .category-product-grid .prodbox_preis img.update-badge {
        position: relative !important;
        top: -5px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V39
   Badge Top-Align + kompaktere Grid-Badges
   =========================================================
   Basis:
   - V38 Zusatzprodukte Unterlinie + Badge hinter Titel

   Korrektur:
   - V38 hat Preis-Badges teilweise wieder mittig/tiefer gesetzt
   - Grid-Badges sollen oben am Preis sitzen
   - Grid-Badges sollen weniger länglich wirken

   Änderung mobil:
   - Preis-Badges in allen 5 Produktlisten oben am Preis
   - kompaktere/squarer Badge-Proportion im Grid
   - Zusatzprodukte-Badge hinter Titel bleibt separat
   ========================================================= */

@media (max-width: 760px) {

    /* Preis-Badges in allen Haupt-Produktlisten: oben am Preis, kompakter */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge {
        width: 31px !important;
        height: 22px !important;
        max-width: 31px !important;
        max-height: 22px !important;
        object-fit: fill !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Falls Badge nicht direkt innerhalb .prodbox_preis selektiert wird */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis span img.update-badge {
        width: 31px !important;
        height: 22px !important;
        max-width: 31px !important;
        max-height: 22px !important;
        object-fit: fill !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
    }

    /* Zusatzprodukte-Badge hinter Titel: nicht wie Preisbadge hochziehen */
    body.page-category.page-subcategory .subcategory-alternative-badge img,
    body.page-subcategory .subcategory-alternative-badge img {
        width: 33px !important;
        height: 19px !important;
        max-width: 33px !important;
        max-height: 19px !important;
        object-fit: contain !important;
        position: static !important;
        top: auto !important;
        vertical-align: top !important;
        transform: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V40
   Badge Feintuning
   =========================================================
   Basis:
   - V39 Badge-Ausrichtung + Alternativtext

   Korrektur:
   - Grid-Badges waren in V39 2px zu hoch
   - Zusatzprodukte-Badge soll oben am Titel ausgerichtet werden

   Änderung mobil:
   - Grid-Badges: 31x20 statt 31x22
   - Zusatzprodukte-Badge hinter Titel: top-aligned
   ========================================================= */

@media (max-width: 760px) {

    /* Grid-Badges: V39 war 2px zu hoch -> wieder flacher */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis span img.update-badge {
        width: 31px !important;
        height: 20px !important;
        max-width: 31px !important;
        max-height: 20px !important;
        object-fit: fill !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Zusatzprodukte: Badge hinter Titel oben am Titel ausrichten */
    body.page-category.page-subcategory .subcategory-alternative-badge,
    body.page-subcategory .subcategory-alternative-badge {
        display: inline-block !important;
        margin: 0 0 0 6px !important;
        padding: 0 !important;
        line-height: 1 !important;
        vertical-align: top !important;
        position: relative !important;
        top: 1px !important;
        white-space: nowrap !important;
    }

    body.page-category.page-subcategory .subcategory-alternative-badge img,
    body.page-subcategory .subcategory-alternative-badge img {
        display: inline-block !important;
        width: 33px !important;
        height: 19px !important;
        max-width: 33px !important;
        max-height: 19px !important;
        object-fit: contain !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        vertical-align: top !important;
        position: static !important;
        top: auto !important;
        transform: none !important;
        box-shadow: none !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V41
   Badge flacher + Linie vor Zusatzprodukten entfernen
   =========================================================
   Basis:
   - V40 Badge Feintuning

   Korrektur:
   - Grid-Badges waren noch zu quadratisch
   - Badge-Höhe nochmal 2px kleiner
   - Linie über "Weitere Produkte aus ..." entfernen

   Änderung mobil:
   - Grid-Badges: 31x18 statt 31x20
   - Badges bleiben oben am Preis ausgerichtet
   - Zusatzprodukte-Header ohne obere Linie
   ========================================================= */

@media (max-width: 760px) {

    /* Grid-Badges: nochmal 2px flacher */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis span img.update-badge {
        width: 31px !important;
        height: 18px !important;
        max-width: 31px !important;
        max-height: 18px !important;
        object-fit: fill !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Linie über "Weitere Produkte aus ..." entfernen */
    body.page-category.page-subcategory .subcategory-alternatives-header,
    body.page-subcategory .subcategory-alternatives-header {
        border-top: 0 !important;
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V42
   Badge noch länglicher + Zusatzprodukte Abstand
   =========================================================
   Basis:
   - V41 Badge flacher + keine Linie vor Zusatzprodukten

   Korrektur:
   - Grid-Badges nochmal 2px flacher/länglicher
   - Zusatzprodukte Cards mit mehr Luft untereinander

   Änderung mobil:
   - Grid-Badges: 31x16 statt 31x18
   - Zusatzprodukte Abstand: 40px statt 30px
   ========================================================= */

@media (max-width: 760px) {

    /* Grid-Badges: nochmal 2px flacher/länglicher */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis span img.update-badge {
        width: 31px !important;
        height: 16px !important;
        max-width: 31px !important;
        max-height: 16px !important;
        object-fit: fill !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        vertical-align: top !important;
        transform: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Zusatzprodukte: etwas mehr Luft zwischen großen Cards */
    body.page-category.page-subcategory .subcategory-alternative-card,
    body.page-subcategory .subcategory-alternative-card {
        margin-bottom: 40px !important;
    }
}

/* =========================================================
   MOBILE SHOP PATCH V43
   Grid-Badge Real-Fix
   =========================================================
   Basis:
   - V42 Badge länglicher + Zusatzprodukte Abstand

   Warum:
   - weiteres Skalieren des IMG allein macht den Badge optisch
     nicht zuverlässig länglicher.
   - Grund: Badge-Grafik/Inline-Styles/alte Regeln beeinflussen
     die sichtbare Fläche.

   Neuer Ansatz:
   - Preis-Badge bekommt im Grid eine bewusst flache Darstellungsbox
   - Bild bleibt darin proportional/sauber
   - Box ist länger/flacher und oben am Preis ausgerichtet
   - Zusatzprodukte-Badge hinter Titel bleibt separat
   ========================================================= */

@media (max-width: 760px) {

    /* Grid-Preiszeile: genug Höhe, Badge darf oben sitzen */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis,
    body.page-product-list .category-product-grid .prodbox_preis {
        line-height: 1.05 !important;
        overflow: visible !important;
        white-space: nowrap !important;
    }

    /* 
       Grid-Badges: echter flacher Badge-Look.
       Wichtig:
       - display:inline-block + feste flache Box
       - object-fit: fill bewusst, damit die sichtbare Form flacher wirkt
       - top bleibt negativ = oben am Preis
       - float entfernen, weil pull-right sonst Breite/Position verfälschen kann
    */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis img.update-badge,
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span img.update-badge,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span img.update-badge,
    body.page-product-list .category-product-grid .prodbox_preis span img[src*="badge_"],
    body.page-product-list .category-product-grid .prodbox_preis span img.update-badge {
        display: inline-block !important;
        float: none !important;
        width: 34px !important;
        height: 14px !important;
        min-width: 34px !important;
        min-height: 14px !important;
        max-width: 34px !important;
        max-height: 14px !important;
        object-fit: fill !important;
        object-position: center center !important;
        position: relative !important;
        top: -5px !important;
        margin-left: 2px !important;
        margin-right: 0 !important;
        padding: 0 !important;
        vertical-align: top !important;
        transform: none !important;
        border: 0 !important;
        box-shadow: none !important;
        line-height: 0 !important;
    }

    /*
       Falls ein Browser wegen HTML-width/height und Inline-Style störrisch ist:
       Container-Span darf das Badge nicht aufblasen.
    */
    body.page-category:not(.page-item) .category-product-grid .prodbox_preis span,
    body.page-category:not(.page-item) .subcategory-product-grid .prodbox_preis span,
    body.page-product-list .category-product-grid .prodbox_preis span {
        vertical-align: top !important;
    }

    /* Zusatzprodukte-Badge bewusst NICHT verflachen */
    body.page-category.page-subcategory .subcategory-alternative-badge img,
    body.page-subcategory .subcategory-alternative-badge img {
        width: 33px !important;
        height: 19px !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 33px !important;
        max-height: 19px !important;
        object-fit: contain !important;
        float: none !important;
        position: static !important;
        top: auto !important;
        vertical-align: top !important;
        transform: none !important;
    }
}



/* =========================================
   MOBILE SIDEBAR RESTORE V44
   Ursache in V43:
   width: min(280px, 86vw) / max-width: 86vw
   Dadurch oeffnet die mobile Sidebar nur teilweise.
   Restore: mobile Sidebar wieder volle Viewport-Breite.
   ========================================= */
@media (max-width: 760px) {
    body #wrapper #sidebar-wrapper,
    body.page-category #sidebar-wrapper,
    body.page-subcategory #sidebar-wrapper,
    body.page-product-list #sidebar-wrapper,
    body.page-service #sidebar-wrapper,
    body.page-search #sidebar-wrapper,
    body.page-contact #sidebar-wrapper,
    body.page-contact-form #sidebar-wrapper,
    body.page-home #sidebar-wrapper,
    body.page-item #sidebar-wrapper {
        left: 0 !important;
        right: auto !important;
        width: 100vw !important;
        min-width: 100vw !important;
        max-width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    body #wrapper:not(.toggled) #sidebar-wrapper,
    body.page-item #wrapper:not(.toggled) #sidebar-wrapper {
        transform: translate3d(-105%, 0, 0) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    body #wrapper.toggled #sidebar-wrapper,
    body.page-item #wrapper.toggled #sidebar-wrapper {
        transform: translate3d(0, 0, 0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}


/* =========================================
   MOBILE SIDEBAR ACTIVE SUBCATEGORY V45
   Aktive Unterkategorie mobil deutlicher markieren:
   - gleicher linker Balken wie aktive Hauptkategorie
   - hellerer aktiver Hintergrund
   - rote Schrift + roter Count-Badge
   ========================================= */
@media (max-width: 760px) {
    body #wrapper.toggled #sidebar-wrapper .sidebar-submenu {
        background: #f7f7f7 !important;
    }

    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link {
        background: #fafafa !important;
        color: #555 !important;
        border-bottom: 1px solid #e8e8e8 !important;
    }

    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link.active,
    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link[aria-current="page"] {
        position: relative !important;
        background: #ffffff !important;
        color: #e30613 !important;
        font-weight: 500 !important;
        border-left: 8px solid #111 !important;
        padding-left: 56px !important;
        box-shadow: inset 0 1px 0 rgba(0,0,0,0.04), inset 0 -1px 0 rgba(0,0,0,0.04) !important;
    }

    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link.active .sidebar-sub-title,
    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link[aria-current="page"] .sidebar-sub-title {
        color: #e30613 !important;
    }

    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link.active .sidebar-count,
    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link[aria-current="page"] .sidebar-count {
        color: #e30613 !important;
        font-weight: 500 !important;
        opacity: 1 !important;
    }

    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link.active:hover,
    body #wrapper.toggled #sidebar-wrapper .sidebar-sub-link[aria-current="page"]:hover {
        background: #ffffff !important;
        color: #e30613 !important;
    }
}

/* =========================================
   SHOW ITEM PHOTOSWIPE MOBILE FIX V130
   iOS/Safari: originales Thumb während Zoom ausblenden.
   Damit bleibt beim Öffnen/Schließen kein altes Thumb im Hintergrund sichtbar.
   Ersetzt die alte show_item_photoswipe_mobile_fix_v128/v129-Einzeldatei.
   ========================================= */
@media (max-width: 760px) {
    body.page-item .pswp,
    body.page-item .pswp--open {
        position: fixed !important;
        inset: 0 !important;
        z-index: 2147483647 !important;
        background: #000 !important;
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }

    body.page-item .pswp__bg {
        background: #000 !important;
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
        will-change: auto !important;
    }

    body.page-item .pswp__scroll-wrap,
    body.page-item .pswp__container,
    body.page-item .pswp__item,
    body.page-item .pswp__zoom-wrap {
        background: transparent !important;
        transition: none !important;
    }

    body.page-item .pswp img,
    body.page-item .pswp__img {
        visibility: visible !important;
        opacity: 1 !important;
        max-width: none !important;
        width: auto;
        height: auto;
        object-fit: contain !important;
        object-position: center center !important;
        margin: 0 !important;
        border: 0 !important;
        transition: none !important;
    }

    body.rs-pswp-mobile-open,
    body.rs-pswp-open {
        overflow: hidden !important;
        touch-action: none !important;
    }

    /* Originale Seiten-Thumbs ausblenden, solange PhotoSwipe aktiv ist. */
    body.rs-pswp-mobile-open.page-item a.pswp-item > img,
    body.rs-pswp-mobile-open.page-item a[data-pswp-width] > img,
    body.rs-pswp-open.page-item a.pswp-item > img,
    body.rs-pswp-open.page-item a[data-pswp-width] > img {
        visibility: hidden !important;
        opacity: 0 !important;
    }

    /* PhotoSwipe-Bilder selbst dürfen davon nicht betroffen sein. */
    body.rs-pswp-mobile-open.page-item .pswp img,
    body.rs-pswp-mobile-open.page-item .pswp__img,
    body.rs-pswp-open.page-item .pswp img,
    body.rs-pswp-open.page-item .pswp__img {
        visibility: visible !important;
        opacity: 1 !important;
    }
}

/* =========================================
   SHOW_CATEGORY MOBILE IMAGE TITLE SPACING V45
   Nur Mobile bis 760px.
   Änderung zu V44:
   - Bild -> Titel/Textblock +3px tiefer
   - keine Eingriffe außerhalb der Produktkarten
   ========================================= */
@media (max-width: 760px) {

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .category-product-info {
        margin-top: 15px !important;
        padding-left: 1px !important;
        left: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 {
        margin-top: 15px !important;
        margin-bottom: 6px !important;
        min-height: 0 !important;
        line-height: 1.12 !important;
    }

    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .prodbox-name,
    body.page-category:not(.page-subcategory):not(.page-item) .category-product-grid .xr_s10 a {
        line-height: 1.12 !important;
    }
}

