/*
Theme Name: Stuff VS Things
Template: rehub-theme
Version: 1.0.0
Author: Unbroken Ads LLC
*/

/* SVT palette — source of truth. Prefer these over scattered hex. */
:root {
    --svt-page: #F2EEE6;
    --svt-card: #FFFFFF;
    --svt-cta: #E2670F;
    --svt-cta-text: #000000;   /* 6.18:1 on --svt-cta; #3A1F03 was 4.49 and AA wants 4.5 */
    --svt-brass: #C8842B;
    --svt-track: #E5E1D8;
    --svt-hairline: #E5E1D8;
    --svt-ink: #26231E;
    --svt-body: #33302B;
    --svt-slate: #79746A;
    /* --- ink: text-only siblings of the three colours above.  The palette
       itself is deliberately unchanged: brass, click and slate keep their
       values for rings, bars, borders, icon masks and backgrounds.  Only
       `color:` declarations are repointed, because WCAG measures text and
       a graphic is a looser test.  Ratios are against cream #F2EEE6, the
       harshest of the four surfaces text sits on. --- */
    --svt-brass-ink: #8F6226;   /* 4.60:1 on cream, was 2.67 */
    --svt-click-ink: #35589C;   /* 5.99:1 on cream, was 3.96 */
    --svt-slate-ink: #655F55;   /* 5.46:1 on cream, was 4.02 */
    /* block 53 — the contrast rule.  Content Standards 1.61 Part 9.
       The comment above says cream is "the harshest of the four surfaces
       text sits on".  It was not: the catalogue sort control was filled
       with --svt-hairline #E5E1D8 and its options with #D6D1C7, where
       brass ink reads 4.08 and 3.50.  Those two surfaces are re-based into
       the light family below rather than the palette being darkened to
       reach them, which would have cost brass #8F6226 -> #7B521B.
       Cream #F2EEE6 is now the floor of the light family by rule, so one
       ink per colour clears every surface text sits on by construction. */
    --svt-pro-ink:  #556F50;    /* 4.81:1 on cream; --svt-pro #5F7D5A was 3.97 */
    --svt-con-ink:  #98564F;    /* 4.80:1 on cream; --svt-con #A35D55 was 4.27 */
    /* A fill that carries text ships with its own text token.  A bright fill
       is NOT a dark surface: white on brass is 3.09 and on CTA 3.40. */
    --svt-on-brass: var(--svt-ink);  /* #26231E on #C8842B = 5.06 */
    --svt-on-cta:   var(--svt-cta-text);  /* #000000 on #E2670F = 6.18 */
    --svt-on-click: #FFFFFF;    /* on #4974C4 = 4.59 */
    --svt-on-added: #FFFFFF;    /* on #4A7C40 = 4.94 */
    --svt-on-dark:  #FFFFFF;    /* ink 15.65, navy 16.07, footer 10.53 */
    /* The two control surfaces, re-based.  A border token used as a fill was
       the defect underneath; the border itself is unchanged. */
    --svt-surface-control:    var(--svt-card, #FFFFFF);
    --svt-surface-control-on: var(--svt-page, #F2EEE6);
    --svt-paper: #FAF8F4;
    --svt-click: #4974c4;
    --svt-ink-85: color-mix(in srgb, var(--svt-ink) 85%, transparent);
    --svt-brass-deep: color-mix(in srgb, var(--svt-brass) 78%, var(--svt-ink));
    --svt-cta-deep: #B56815;
    --svt-cta-deep: color-mix(in srgb, var(--svt-cta) 78%, var(--svt-ink));
    --svt-click-deep: color-mix(in srgb, var(--svt-click) 78%, var(--svt-ink));
    --svt-pro: #5F7D5A;
    --svt-con: #A35D55;
    --svt-added: #3B6633;
    --svt-added-bg: #EDF2E9;
    --svt-added-border: #4A7C40;
    /* block 54 — the unfilled part of EVERY score graphic is this one value:
       the ring's empty ticks, the two blend bars beside it, and the criteria
       bars' backfill.  They were three different colours: the criteria bars
       painted this token at 24% (#BCC3B0), the ring painted the same token
       darkened a further 12% by ink (#AAB09E), and the blend bars painted
       --svt-hairline #E5E1D8, which has no green in it at all.  40% is the
       ceiling before the track and the brass fill converge in luminance
       (1.35:1 at 40%, 1.06:1 at 55%). */
    --svt-remainder-green: color-mix(in srgb, var(--svt-added) 40%, var(--svt-track)); /*b54*/
    --svt-compare-hover-bg: color-mix(in srgb, var(--svt-added-bg) 55%, var(--svt-card));
    /* Unmapped leftovers (sale badges only) */
    --svt-review-red: #e14b28;
    --svt-review-red-hover: #c93d20;
    --svt-review-red-shadow: rgba(225, 75, 40, 0.32);
    --svt-compare-tray-w: 268px;
    /* Title → scores and scores → rank on catalog cards. One value. */
    --svt-card-stack-gap: 8px; /* title → scores → rank → price */
    /* Archive title → disclosure → result count. One value. */
    --svt-archive-head-gap: 8px;
}

/* Prices are ink, not a warning */
.woocommerce .redbrightcolor,
.redbrightcolor {
    color: var(--svt-ink);
}
.woocommerce .onsale,
.woocommerce span.onsale {
    background: var(--svt-review-red) !important;
}
/* Default offer / buy buttons: CTA orange fill, dark CTA text */
.woocommerce a.add_to_cart_button:not(.svt-buy-now),
.woocommerce a.button.alt,
.woocommerce button.button.alt {
    background-color: var(--svt-cta) !important;
    border-color: var(--svt-cta) !important;
    color: var(--svt-cta-text) !important;
    text-shadow: none !important;
}
.woocommerce a.add_to_cart_button:not(.svt-buy-now):hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
    background-color: var(--svt-cta-deep) !important;
    border-color: var(--svt-cta-deep) !important;
    color: var(--svt-cta-text) !important;
}

/*
 * Single-product BUY NOW hover (CRO2000 / Rehub external.php).
 * Painted chip: .coupon_woo_rehub > p.cart > a.single_add_to_cart_button.button.alt
 * Not grid a.svt-buy-now. Beats rhstyle duplicate + parent wp_head
 * .woocommerce a.single_add_to_cart_button:hover (same fill as idle, transparent
 * border, box-shadow). Canonical copy also prints as #svt-single-buy-hover.
 * Compare chips are excluded.
 */
body.single-product {
    --svt-cta-deep: #B56815;
    --svt-cta-deep: color-mix(in srgb, var(--svt-cta) 78%, var(--svt-ink));
}
body.single-product.woocommerce .summary .woo-button-area .coupon_woo_rehub p.cart a.single_add_to_cart_button.button.alt,
body.single-product .summary .coupon_woo_rehub p.cart a.single_add_to_cart_button,
body.single-product .summary .woo-button-area a.single_add_to_cart_button.button.alt,
body.single-product .summary a.single_add_to_cart_button.button.alt {
    background: var(--svt-cta) !important;
    background-color: var(--svt-cta) !important;
    background-image: none !important;
    border: 1px solid var(--svt-cta) !important;
    color: var(--svt-cta-text) !important;
    box-sizing: border-box !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}
body.single-product.woocommerce .summary .woo-button-area .coupon_woo_rehub p.cart a.single_add_to_cart_button.button.alt:hover,
body.single-product.woocommerce .summary .woo-button-area .coupon_woo_rehub p.cart a.single_add_to_cart_button.button.alt:focus,
body.single-product.woocommerce .summary .woo-button-area .coupon_woo_rehub p.cart a.single_add_to_cart_button.button.alt:focus-visible,
body.single-product.woocommerce .summary .woo-button-area .coupon_woo_rehub p.cart a.single_add_to_cart_button.button.alt:active,
body.single-product .summary .coupon_woo_rehub p.cart a.single_add_to_cart_button:hover,
body.single-product .summary .coupon_woo_rehub p.cart a.single_add_to_cart_button:focus,
body.single-product .summary .coupon_woo_rehub p.cart a.single_add_to_cart_button:focus-visible,
body.single-product .summary .coupon_woo_rehub p.cart a.single_add_to_cart_button:active,
body.single-product .summary .woo-button-area a.single_add_to_cart_button:hover,
body.single-product .summary .woo-button-area a.single_add_to_cart_button:focus,
body.single-product .summary .woo-button-area a.single_add_to_cart_button:focus-visible,
body.single-product .summary .woo-button-area a.single_add_to_cart_button:active,
body.single-product .summary a.single_add_to_cart_button:hover,
body.single-product .summary a.single_add_to_cart_button:focus,
body.single-product .summary a.single_add_to_cart_button:focus-visible,
body.single-product .summary a.single_add_to_cart_button:active,
body.single-product .summary a.svt-buy-now:hover,
body.single-product .summary a.svt-buy-now:focus,
body.single-product .summary a.svt-buy-now:focus-visible,
body.single-product .summary a.svt-buy-now:active,
body.single-product .summary a.woo_loop_btn:hover,
body.single-product .summary a.woo_loop_btn:focus,
body.single-product .summary a.woo_loop_btn:focus-visible,
body.single-product .summary a.woo_loop_btn:active,
body.single-product .summary .priced_block .btn_offer_block:hover,
body.single-product .summary .priced_block .btn_offer_block:focus,
body.single-product .summary .priced_block .btn_offer_block:focus-visible,
body.single-product .summary .priced_block .btn_offer_block:active,
body.single-product .summary .svt-single-cta-actions a:not(.wpsm-button-new-compare):not(.svt-single-compare):not(.rhwoosinglecompare):not(.add_to_compare_button):hover,
body.single-product .summary .svt-single-cta-actions a:not(.wpsm-button-new-compare):not(.svt-single-compare):not(.rhwoosinglecompare):not(.add_to_compare_button):focus,
body.single-product .summary .svt-single-cta-actions a:not(.wpsm-button-new-compare):not(.svt-single-compare):not(.rhwoosinglecompare):not(.add_to_compare_button):focus-visible,
body.single-product .summary .svt-single-cta-actions a:not(.wpsm-button-new-compare):not(.svt-single-compare):not(.rhwoosinglecompare):not(.add_to_compare_button):active {
    background: var(--svt-cta-deep) !important;
    background-color: var(--svt-cta-deep) !important;
    background-image: none !important;
    border: 1px solid var(--svt-slate) !important;
    border-color: var(--svt-slate) !important;
    color: var(--svt-cta-text) !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
    outline: none !important;
    filter: none !important;
    box-sizing: border-box !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
}

/* Brand label in product loop */
.svt-brand {
    margin: 6px 0 6px 0;
    font-size: 16px;
    line-height: 1.3;
}
.svt-brand,
.svt-brand a {
    color: var(--svt-click-ink);
    font-weight: 700;
    text-decoration: underline;
    text-transform: uppercase !important;
}
.svt-brand a:hover {
    color: var(--svt-click-deep);
    text-decoration: underline;
}

/* Category link on product cards — click */
.woocommerce .products .woo_grid_compact a.woocat,
.woocommerce .products.grid_woo a.woocat {
    color: var(--svt-click-ink) !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    letter-spacing: 0.02em;
}
.woocommerce .products .woo_grid_compact a.woocat:hover,
.woocommerce .products.grid_woo a.woocat:hover {
    color: var(--svt-click-deep) !important;
    text-decoration: underline;
}

/*
 * Category archives: hide the card category only on *child* terms
 * (e.g. Reverse Osmosis) where the page already is that label.
 * Top-level parents (e.g. Water Filtration) keep the subcategory
 * link so shoppers can tell Combo / RO / Countertop / etc. apart.
 * Body class from svt_product_cat_body_class().
 */
body.tax-product_cat.svt-product-cat-child .woocommerce .products.grid_woo .product .cat_for_grid {
    display: none !important;
}

/* Brand name in compare table */
.table_view_charts .svt-compare-brand,
.table_view_charts .svt-compare-brand a {
    font-size: 15px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--svt-click-ink);
    text-decoration: underline;
}
.table_view_charts .svt-compare-brand a:hover {
    color: var(--svt-click-deep);
    text-decoration: underline;
}

/*
 * Compare chart product header — defensive copy of inline svt-tabs rules
 * so the fixes still load if the page cache has an old style handle version.
 * Pattern matches grid cards: free space under title; scores+price+CTA bottom pack.
 */
.table_view_charts .top_chart_item > ul > .image_row_chart {
    display: flex !important;
    align-items: stretch !important;
}
.table_view_charts .top_chart_item > ul > .image_row_chart > li,
.table_view_charts .top_chart_item > ul > .image_row_chart > .top_chart_item {
    display: flex !important;
    align-items: stretch !important;
    height: auto !important;
}
.table_view_charts .product_image_col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100%;
    flex: 1 1 auto;
    box-sizing: border-box;
    position: relative !important;
    text-align: left;
    padding: 8px 8px 12px !important;
}
.table_view_charts .product_image_col figure {
    order: 1;
    position: relative !important;
    margin: 0 0 8px !important;
    width: 100%;
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.table_view_charts .product_image_col figure > a {
    display: block;
    margin: 0;
    text-align: left;
}
.table_view_charts .product_image_col img,
.table_view_charts .product_image_col figure img {
    display: block;
    margin-left: 0 !important;
    margin-right: auto !important;
}
.table_view_charts .product_image_col h2 {
    order: 2;
    width: 100%;
    margin: 0 0 var(--svt-card-stack-gap) !important;
    padding: 0 !important;
    flex: 0 0 auto;
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    line-height: 1.3;
    max-height: calc(1.3em * 3);
    height: auto !important;
    text-align: left;
}
.table_view_charts .product_image_col h2 a {
    text-align: left;
}
.table_view_charts .rev-in-compare-flip {
    order: 3;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    display: flex !important;
    justify-content: center;
    align-items: center;
    flex: 0 0 auto;
    z-index: auto !important;
}
.table_view_charts .svt-compare-header-scores {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
}
.table_view_charts .svt-compare-header-scores .radial-progress {
    background-color: var(--svt-track);
}
.table_view_charts .svt-compare-header-scores .radial-progress .inset {
    background: var(--svt-ink);
    background-color: var(--svt-ink);
}
.table_view_charts .svt-compare-header-scores .radial-progress.is-expert .circle .mask .fill,
.table_view_charts .svt-compare-header-scores .radial-progress.is-social .circle .mask .fill {
    background-color: var(--svt-brass);
}
.table_view_charts .price-in-compare-flip {
    order: 4;
    margin-top: 0 !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px;
    padding-top: 0 !important;
    flex: 0 0 auto;
}
.table_view_charts .rev-in-compare-flip:not(:has(.svt-compare-header-scores)) {
    margin-top: 0 !important;
    padding: 0 !important;
    min-height: 0;
}
.table_view_charts .product_image_col:not(:has(.svt-compare-header-scores)) .price-in-compare-flip {
    margin-top: auto !important;
}
@media (max-width: 767px) {
    .table_view_charts .rev-in-compare-flip {
        margin-top: 0 !important;
        padding-top: 6px !important;
    }
    .table_view_charts .product_image_col:not(:has(.svt-compare-header-scores)) .price-in-compare-flip {
        margin-top: 0 !important;
    }
}
.table_view_charts .price-woo-compare-chart,
.table_view_charts .price-woo-compare-chart.rehub-main-color,
.table_view_charts .price-woo-compare-chart .amount,
.table_view_charts .price-woo-compare-chart .woocommerce-Price-amount {
    color: var(--svt-ink) !important;
}

/*
 * Prevent horizontal page scroll, but use overflow-x: clip (not hidden) so
 * position:fixed tray isn’t clipped to a padding/shrink box smaller than the viewport.
 */
body {
    overflow-x: clip;
    max-width: 100%;
    background-color: var(--svt-page);
    color: var(--svt-body);
}
html {
    overflow-x: clip;
    max-width: 100%;
    background-color: var(--svt-page);
}

/* Brand archive sidebar */
.svt-brand-archive-sidebar .svt-brand-archive-logo,
.sidebar .svt-category-logo-slot {
    margin-bottom: 28px;
}
.svt-brand-archive-sidebar .svt-brand-archive-shop-link {
    display: none;
    margin: 0 0 28px;
    text-align: center;
}

.svt-brand-archive-description {
    clear: both;
    margin: 4px 0 0;
    padding-top: 8px;
    border-top: 1px solid var(--svt-hairline);
    max-width: 100%;
}
.svt-brand-archive-description p:last-child {
    margin-bottom: 0;
}

/* Shared Show more clamp (product tabs + brand archive descriptions). */
.svt-prose-clip {
    position: relative;
    clear: none;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.svt-prose-clip .svt-prose-body {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    overflow: hidden;
    margin: 0;
    width: 100%;
}
.svt-prose-clip .svt-prose-body--box {
    display: block !important;
    -webkit-box-orient: initial;
    -webkit-line-clamp: unset;
    overflow: hidden !important;
}
.svt-prose-clip.is-open .svt-prose-body {
    display: block;
    -webkit-line-clamp: unset;
    overflow: visible;
}
.svt-prose-clip.is-open .svt-prose-body--box {
    max-height: none !important;
    overflow: visible !important;
}
.svt-prose-clip .svt-prose-body--box > *:first-child {
    margin-top: 0 !important;
}
.svt-prose-clip .svt-prose-body--box > *:last-child {
    margin-bottom: 0 !important;
}
.svt-prose-clip:not(.is-open)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 2.1em;
    height: 2.4em;
    pointer-events: none;
    background: linear-gradient(to bottom, transparent, var(--svt-page, #F2EEE6));
}
.svt-prose-clip:not(.is-open) > .svt-prose-body--box {
    position: relative;
}
.svt-prose-clip:not(.is-open) > .svt-prose-body--box::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2.4em;
    pointer-events: none;
    background: linear-gradient(to bottom, transparent, var(--svt-page, #F2EEE6));
}
.svt-prose-clip:not(.is-open):has(> .svt-prose-body--box)::after {
    content: none;
}
.svt-prose-toggle {
    display: inline-flex;
    align-items: center;
    align-self: flex-end;
    gap: 6px;
    margin-top: 8px;
    padding: 0;
    border: 0;
    background: none;
    color: var(--svt-click-ink, #35589C);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.svt-prose-toggle:hover,
.svt-prose-toggle:focus-visible {
    color: var(--svt-click-deep, #3a5d9c);
}
.svt-prose-chevron {
    display: inline-block;
    width: 0.55em;
    height: 0.55em;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    translate: 0 -0.1em;
    transition: transform 0.2s ease;
}
.svt-prose-clip.is-open .svt-prose-chevron {
    transform: rotate(225deg);
    translate: 0 0.15em;
}
/* Pagination + score legend: 3-col balance so pages stay true horizontal center
   | 1fr (legend end-aligned) | auto (pagination) | 1fr (empty spacer) |
   !important beats Rehub: body .woocommerce-pagination{display:block}, clear:both, floats. */
.svt-archive-footer-bar {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    grid-template-rows: auto !important;
    align-items: center !important;
    justify-items: stretch;
    gap: 0 !important;
    margin: 12px 0 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
}
/* DOM: pagination then legend; grid places both on row 1 (legend left of pages) */
.svt-archive-footer-bar .svt-score-legend {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    margin: 0 !important;
    width: fit-content !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
}
.svt-archive-footer-bar .woocommerce-pagination,
.svt-archive-footer-bar nav.woocommerce-pagination {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: 100% !important;
    display: block !important;
    flex-basis: auto !important;
    text-align: center !important;
}
/* Theme paginate_links: float left lis + clear:both on ul must not escape grid item */
.svt-archive-footer-bar .woocommerce-pagination ul.page-numbers {
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: 100% !important;
    flex-basis: auto !important;
    display: inline-block !important;
    margin: 0 !important;
    vertical-align: middle;
}
.svt-archive-footer-bar .woocommerce-pagination::after {
    content: "";
    display: table;
    clear: both;
}
/* Fallback when bar wrapper is absent (no legend on that view) */
.rh_woo_main_archive .woocommerce-pagination {
    margin-bottom: 0 !important;
    margin-top: 8px;
}
/* Mobile ≤767 only: stack, both centered */
@media (max-width: 767px) {
    .svt-score-legend-slot--top,
    .svt-score-legend-slot--sidebar {
        display: none !important;
    }
    .svt-archive-footer-bar {
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        gap: 12px 0 !important;
    }
    .svt-archive-footer-bar .svt-score-legend,
    .svt-archive-footer-bar .woocommerce-pagination,
    .svt-archive-footer-bar nav.woocommerce-pagination {
        grid-column: 1 !important;
        grid-row: auto !important;
        justify-self: center !important;
        margin: 0 !important;
    }
    .svt-archive-footer-bar .svt-score-legend {
        order: 2;
    }
    .svt-archive-footer-bar .woocommerce-pagination {
        order: 1;
    }
}

/* Woo pagination current/hover: click, not Rehub main-color red.
   Current page is bold; layout stays in the footer-bar rules above. */
.woocommerce-pagination .page-numbers .current,
.woocommerce-pagination span.page-numbers.current,
.woocommerce-pagination li .page-numbers.current,
nav.woocommerce-pagination ul.page-numbers li span.current,
span.page-numbers.current,
li .page-numbers.current {
    color: var(--svt-click-ink) !important;
    font-weight: 700 !important;
}
.woocommerce-pagination .page-numbers a:hover,
.woocommerce-pagination a.page-numbers:hover,
nav.woocommerce-pagination ul.page-numbers li a:hover,
nav.woocommerce-pagination ul.page-numbers li.active a,
ul.page-numbers li a:hover,
ul.page-numbers li.active a {
    color: var(--svt-click-ink) !important;
}

.svt-brand-archive-title {
    text-align: left;
    margin: 0 0 var(--svt-archive-head-gap);
}

.svt-brand-shop-btn {
    display: inline-block;
    padding: 0.65em 1.1em;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--svt-card) !important;
    background: var(--svt-click);
    border-radius: 4px;
}
.svt-brand-shop-btn:hover {
    color: var(--svt-card) !important;
    background: var(--svt-click-deep);
    opacity: 1;
}

/* Brand archive logo */
.svt-brand-archive-logo {
    text-align: center;
    background: transparent;
    border: none;
    padding: 14px 14px 16px;
}
.svt-brand-archive-logo img {
    max-height: 120px;
    width: auto;
    object-fit: contain;
    display: inline-block;
    max-width: 88%;
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    transition: opacity 0.2s ease, transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
}
.svt-brand-archive-logo-link {
    display: inline-block;
    max-width: 100%;
    cursor: pointer;
    text-decoration: none;
    outline-offset: 4px;
    transition: opacity 0.2s ease;
}
.svt-brand-archive-logo-link img {
    box-shadow: 0 0 0 0 transparent;
}
.svt-brand-archive-logo-link:hover img,
.svt-brand-archive-logo-link:focus-visible img {
    opacity: 0.85;
    transform: scale(1.03);
    filter: brightness(1.03);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}
.svt-brand-archive-logo-link:focus-visible {
    outline: 2px solid #333;
}
/* Empty category logo slot: no dashed box, no leftover gap. */
.svt-category-logo-placeholder,
.svt-category-logo-slot:not(:has(img)) {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}
@media (max-width: 1023px) {
    .svt-category-logo-slot {
        display: none !important;
    }
}

/* Product grid cards — Rehub uses div.products, not ul.products.
 * No filled panel: cream --svt-page shows through. No card border/outline.
 * Parent css/woocommerce.css:113 .products.grid_woo .product { background-color:#fff; border:1px solid #e2e2e2 }
 * Parent css/woocommerce.css:98  .woo_grid_compact:hover { background-color:#fff; box-shadow:... }
 * Compare/Buy stay filled (their own borders). Score rings untouched. Not single-product summary. */
.woocommerce .products .product.col_item.woo_grid_compact,
.woocommerce .products.grid_woo .product,
.woocommerce .products.grid_woo .product.woo_grid_compact,
.product.col_item.woo_grid_compact {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}
.woocommerce .products .woo_grid_compact:hover,
.woocommerce .products .woo_grid_compact:focus,
.woocommerce .products .woo_grid_compact:active,
.woocommerce .products.grid_woo .product:hover,
.woocommerce .products.grid_woo .product:focus,
.woocommerce .products.grid_woo .product:active,
.woocommerce .products.grid_woo .product.woo_grid_compact:hover,
.woocommerce .products.grid_woo .product.woo_grid_compact:focus,
.woocommerce .products.grid_woo .product.woo_grid_compact:active,
.woocommerce .products .product.col_item.woo_grid_compact:hover,
.woocommerce .products .product.col_item.woo_grid_compact:focus,
.woocommerce .products .product.col_item.woo_grid_compact:active,
.product.col_item.woo_grid_compact:hover,
.product.col_item.woo_grid_compact:focus,
.product.col_item.woo_grid_compact:active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}
.woocommerce .products .product.col_item .border-top {
    border-top-color: #888888 !important;
}

/*
 * Product grid gutters — Rehub uses outer negative wrap margin + per-card
 * side margins (not flex gap). Defaults are ~2–5% horizontal / 15–30px vertical;
 * tighten vertical row spacing especially.
 *
 * Desktop (default):
 *   two:   1.25% side → ~2.5% between cols; bottom 10px
 *   three: 0.75% side → ~1.5% between cols; bottom 8px
 *   four:  0.5%  side → ~1%   between cols; bottom 8px
 *   five:  0.5%  side → ~1%   between cols; bottom 8px
 *   six:   0.35% side → ~0.7% between cols; bottom 8px
 * Tablet 768–1023 (3-col fold for 4/5/6): 0.75% side; bottom 8px
 * ≤767 (2-col): 1% side each (~2% between cols); bottom 6px
 */
.woocommerce .products.col_wrap_two {
    margin: 0 -1.25% 12px;
}
.woocommerce .products.col_wrap_two .col_item {
    width: 47.5%;
    margin: 0 1.25% 10px;
}
.woocommerce .products.col_wrap_three {
    margin: 0 -0.75% 12px;
}
.woocommerce .products.col_wrap_three .col_item {
    width: 31.83%;
    margin: 0 0.75% 8px;
}
.woocommerce .products.col_wrap_fourth {
    margin: 0 -0.5% 10px;
}
.woocommerce .products.col_wrap_fourth .col_item {
    width: 24%;
    margin: 0 0.5% 8px;
}
.woocommerce .products.col_wrap_fifth {
    margin: 0 -0.5% 10px;
}
.woocommerce .products.col_wrap_fifth .col_item {
    width: 19%;
    margin: 0 0.5% 8px;
}
.woocommerce .products.col_wrap_six {
    margin: 0 -0.35% 10px;
}
.woocommerce .products.col_wrap_six .col_item {
    width: 15.97%;
    margin: 0 0.35% 8px;
}

@media (max-width: 1023px) and (min-width: 768px) {
    .woocommerce .products.col_wrap_fourth,
    .woocommerce .products.col_wrap_fifth,
    .woocommerce .products.col_wrap_six {
        margin: 0 -0.75% 12px;
    }
    .woocommerce .products.col_wrap_fourth .col_item,
    .woocommerce .products.col_wrap_fifth .col_item,
    .woocommerce .products.col_wrap_six .col_item {
        width: 31.83%;
        margin: 0 0.75% 8px;
    }
}

@media (max-width: 767px) {
    .woocommerce .products.col_wrap_two,
    .woocommerce .products.col_wrap_three,
    .woocommerce .products.col_wrap_fourth,
    .woocommerce .products.col_wrap_fifth,
    .woocommerce .products.col_wrap_six {
        margin: 0 0 10px 0;
    }
    .woocommerce .products.col_wrap_two .col_item,
    .woocommerce .products.col_wrap_three .col_item,
    .woocommerce .products.col_wrap_fourth .col_item,
    .woocommerce .products.col_wrap_fifth .col_item,
    .woocommerce .products.col_wrap_six .col_item {
        width: 48%;
        /* Side gutters ~2% between cards; row gap 6px (was 12px) */
        margin: 0 1% 6px 1%;
    }
    /*
     * Parent css/woocommerce.css:98 sticks on touch:
     *   .woo_grid_compact:hover{border:1px solid #eee;box-shadow:0 8px 32px rgba(0,0,0,.1)}
     * That shadow reads as a dark outline around the whole tile. Kill it + the hairline.
     */
    .woocommerce .products .product.col_item.woo_grid_compact,
    .woocommerce .products.grid_woo .product,
    .woocommerce .products.grid_woo .product.woo_grid_compact,
    .product.col_item.woo_grid_compact,
    .woocommerce .products .woo_grid_compact:hover,
    .woocommerce .products .woo_grid_compact:focus,
    .woocommerce .products .woo_grid_compact:active,
    .woocommerce .products.grid_woo .product:hover,
    .woocommerce .products.grid_woo .product:focus,
    .woocommerce .products.grid_woo .product:active,
    .woocommerce .products.grid_woo .product.woo_grid_compact:hover,
    .woocommerce .products.grid_woo .product.woo_grid_compact:focus,
    .woocommerce .products.grid_woo .product.woo_grid_compact:active,
    .woocommerce .products .product.col_item.woo_grid_compact:hover,
    .woocommerce .products .product.col_item.woo_grid_compact:focus,
    .woocommerce .products .product.col_item.woo_grid_compact:active,
    .product.col_item.woo_grid_compact:hover,
    .product.col_item.woo_grid_compact:focus,
    .product.col_item.woo_grid_compact:active {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        outline: none !important;
        -webkit-tap-highlight-color: transparent;
    }
}

/* Condense grid cards: less shell padding + smaller image stack */
.woocommerce .products.grid_woo .product {
    /* Footer is in normal flow now — no tall absolute reserve */
    padding: 10px !important;
}

/*
 * Footer stack (price + dual CTAs) in document flow under the rank line.
 * — no divider
 * — top margin is --svt-card-stack-gap (same as title→scores and scores→rank)
 * — 6px gap is price↔buttons only
 */
.woocommerce .products.grid_woo .product .border-top.abposbot {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    border-top: none !important;
    padding: 0 !important;
    margin: var(--svt-card-stack-gap) 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 6px; /* price ↔ buttons (tight to offset side-label width layout) */
    width: 100%;
    min-height: 0;
    box-sizing: border-box;
}

/* Price on its own row above the CTAs — right-aligned (scores stay centered) */
.woocommerce .products.grid_woo .product .price_for_grid {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
    margin: 0 !important;
    float: none !important;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto;
    overflow: visible;
    padding: 0 16px 0 0 !important;
    order: 1;
}
.woocommerce .products.grid_woo .product .price_for_grid .price {
    font-size: 18px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    color: var(--svt-ink) !important;
    overflow: visible;
    text-overflow: clip;
    text-align: right;
}
.woocommerce .products.grid_woo .product .price_for_grid,
.woocommerce .products.grid_woo .product .price_for_grid .price ins,
.woocommerce .products.grid_woo .product .price_for_grid .amount {
    color: var(--svt-ink) !important;
}

/*
 * Dual CTAs under price — equal-width Compare | Buy Now.
 * CSS Grid (not flex): kills .floatright / .rh-flex-right-align fights and
 * prevents Buy from painting over Compare when width:0 flex halves fail.
 * grid-column places Compare left / Buy right regardless of DOM order.
 */
.woocommerce .products.grid_woo .product .btn_for_grid,
.woocommerce .products.grid_woo .product .btn_for_grid.floatright,
.woocommerce .products.grid_woo .product .btn_for_grid.rh-flex-right-align {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-rows: 38px !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 6px !important;
    column-gap: 6px !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    margin-left: 0 !important; /* beat .rh-flex-right-align { margin-left: auto } */
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    order: 2;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    box-sizing: border-box !important;
}
.woocommerce .products.grid_woo .product .btn_for_grid > * {
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 38px !important;
    max-height: 38px !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/*
 * Rectangle “Buy Now” — CTA orange fill, dark CTA text.
 * Grid half with Compare on the dual-CTA row (.btn_for_grid).
 */
.woocommerce .products .woo_grid_compact .woo_loop_btn,
.woocommerce .products .woo_grid_compact a.svt-buy-now {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    border: 1px solid var(--svt-cta) !important;
    border-radius: 3px !important;
    box-sizing: border-box !important;
    background: var(--svt-cta) !important;
    color: var(--svt-cta-text) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    line-height: 1 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
    transition: background 0.15s ease, border-color 0.15s ease;
}
/* No leading icon on solid Buy Now (Compare keeps its + square) */
.woocommerce .products .woo_grid_compact .woo_loop_btn::before,
.woocommerce .products .woo_grid_compact a.svt-buy-now::before {
    content: none !important;
    display: none !important;
}
.woocommerce .products .woo_grid_compact .svt-buy-now__label {
    display: inline-block;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    padding: 0 !important;
    color: var(--svt-cta-text) !important;
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
}
.woocommerce .products .woo_grid_compact .woo_loop_btn:hover,
.woocommerce .products .woo_grid_compact .woo_loop_btn:focus,
.woocommerce .products .woo_grid_compact .woo_loop_btn:focus-visible,
.woocommerce .products .woo_grid_compact .woo_loop_btn:active,
.woocommerce .products .woo_grid_compact a.svt-buy-now:hover,
.woocommerce .products .woo_grid_compact a.svt-buy-now:focus,
.woocommerce .products .woo_grid_compact a.svt-buy-now:focus-visible,
.woocommerce .products .woo_grid_compact a.svt-buy-now:active {
    background: var(--svt-cta-deep) !important;
    background-color: var(--svt-cta-deep) !important;
    border: 1px solid var(--svt-slate) !important;
    border-color: var(--svt-slate) !important;
    border-width: 1px !important;
    color: var(--svt-cta-text) !important;
    transform: none !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
    box-sizing: border-box !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
}
/* Hide legacy cart icons on Buy Now only */
.woocommerce .products .woo_grid_compact .svt-buy-now__icon,
.woocommerce .products .woo_grid_compact .woo_loop_btn > svg {
    display: none !important;
}

/* Figure is mt25 + mb15 in the template (~40px gaps) — pull tight */
.woocommerce .products.grid_woo .product.woo_grid_compact figure {
    margin: 0 -10px 10px !important;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.woocommerce .products.grid_woo .product.woo_grid_compact figure:not(.notresized) img {
    height: 155px;
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

/* Tighter text stack under the image; clamp long titles so equal-height rows stay dense */
.woocommerce .products.grid_woo .product .cat_for_grid {
    margin-bottom: 2px;
    line-height: 1.2;
}
.woocommerce .products.grid_woo .product h2,
.woocommerce .products.grid_woo .product h3 {
    margin-top: 2px !important;
    margin-bottom: var(--svt-card-stack-gap) !important;
    display: block;
    overflow: hidden;
    line-height: 1.3;
    max-height: calc(1.3em * 2 + 8px);
    min-height: calc(1.3em * 2 + 8px);
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--svt-ink) !important;
    height: auto !important;
    text-align: center;
}
.woocommerce .products.grid_woo .product h2 a,
.woocommerce .products.grid_woo .product h3 a,
.woocommerce .products.grid_woo .product h3 .svt-title-link {
    font-weight: inherit !important;
    color: inherit !important;
    text-decoration: none !important;
}
.woocommerce .products.grid_woo .product h3 .svt-title-link {
    display: block;
}
.woocommerce .products.grid_woo .product h3 .svt-title-brand,
.woocommerce .products.grid_woo .product h3 .svt-title-rest {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: center;
}
.woocommerce .products.grid_woo .product h3 .svt-title-brand {
    color: inherit;
    text-decoration: none;
    font-weight: 700 !important;
    margin-bottom: 8px;
}
.woocommerce .products.grid_woo .product h3 .svt-title-rest {
    font-weight: 400 !important;
    font-size: 0.85em;
}
.woocommerce .products .product:has(.svt-title-brand) .svt-brand,
.woocommerce .products .product:has(.svt-title-brand) .woo_code_zone_loop {
    display: none !important;
}

/* Single product H1: brand on line 1, rest wraps up to 2 more lines, left aligned */
.single-product .summary h1.product_title.entry-title,
.single-product .summary h1.product_title {
    text-align: left;
    width: 100%;
    float: none;
    line-height: 1.25;
    max-height: calc(1.25em * 3 + 8px);
    overflow: hidden;
}
.single-product .summary h1.product_title .svt-prod-brand {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    color: inherit;
    text-decoration: none;
    font-weight: 700;
    margin-bottom: 8px;
}
.single-product .summary h1.product_title .svt-prod-rest {
    display: block;
    text-align: left;
    white-space: normal;
    overflow: hidden;
    max-height: calc(1.25em * 2);
    font-weight: 400;
    font-size: 0.85em;
}
@media (max-width: 767px) {
    .single-product .summary h1.product_title.entry-title,
    .single-product .summary h1.product_title {
        padding-left: 16px;
        box-sizing: border-box;
    }
}

/*
 * Column card: free space under title; scores + price + buttons pack at the bottom.
 */
.woocommerce .products.grid_woo .product.woo_grid_compact {
    display: flex;
    flex-direction: column;
}
/* Drop empty Rehub blocks that sit between scores and brand */
.woocommerce .products.grid_woo .product .wp-block-group:empty {
    display: none;
}

/*
 * Scores pin above the price block.
 * Vertical air slightly tighter than before so side labels don’t grow card height.
 */
.woocommerce .products.grid_woo .product .svt-loop-scores {
    margin-top: auto;
    margin-bottom: var(--svt-card-stack-gap);
    padding-top: 6px;
    padding-bottom: 6px;
    justify-content: flex-start;
    width: 100%;
    box-sizing: border-box;
}
.woocommerce .products.grid_woo .product .svt-brand {
    margin: 4px 0 0;
}

/* Category/subcategory: scores + brand as one mid block above price */
body:not(.tax-product_brand) .woocommerce .products.grid_woo .product:has(.svt-brand) .svt-loop-scores {
    margin-top: auto;
    margin-bottom: var(--svt-card-stack-gap);
    padding-top: 6px;
    padding-bottom: 6px;
}
body:not(.tax-product_brand) .woocommerce .products.grid_woo .product:has(.svt-brand) .woo_code_zone_loop {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 0; /* price row carries the shared stack gap */
}
/* No scores: brand alone above price */
.woocommerce .products.grid_woo .product:not(:has(.svt-loop-scores)) .woo_code_zone_loop {
    margin-top: auto;
    margin-bottom: 0;
    padding-top: 6px;
    padding-bottom: 0;
}

/* Brand archive: brand under every card is redundant with the page */
body.tax-product_brand .products .woo_code_zone_loop,
body.tax-product_brand .products .svt-brand {
    display: none !important;
}
body.tax-product_brand .woocommerce .products.grid_woo .product .svt-loop-scores {
    margin-top: auto !important;
    margin-bottom: var(--svt-card-stack-gap) !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

/* Dynamic price filter — live slider, no Filter button */
.svt-dynamic-price-filter {
    border: 1px solid #E5E1D8;
    padding: 0;
    margin-bottom: 16px;
    background: transparent;
    box-sizing: border-box;
}
.svt-dynamic-price-filter .title {
    display: none;
}
.svt-dynamic-price-filter .price_slider_wrapper {
    padding: 0 14px 16px;
}
.svt-dynamic-price-filter .price_slider_wrapper {
    margin: 0;
}
/* Hide Woo’s mandatory submit control; range applies on release */
.svt-dynamic-price-filter .price_slider_amount .button,
.svt-dynamic-price-filter button[type="submit"] {
    display: none !important;
}
.svt-dynamic-price-filter .price_slider_amount {
    display: block !important;
    text-align: center !important;
    margin-top: 12px !important;
    line-height: 1.3 !important;
    font-size: 13px !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}
.svt-dynamic-price-filter .price_slider_amount .price_label {
    display: block !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0;
    color: var(--svt-slate-ink) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-align: center !important;
}
.svt-dynamic-price-filter .price_slider_amount .price_label .from,
.svt-dynamic-price-filter .price_slider_amount .price_label .to {
    font-weight: 700 !important;
    color: #111 !important;
    letter-spacing: 0.01em;
}
.svt-dynamic-price-filter .price_slider_amount .clear {
    display: none !important;
}

/* Track + range */
.svt-dynamic-price-filter .price_slider.ui-slider {
    margin: 14px 6px 6px !important;
    height: 6px !important;
    background: var(--svt-hairline) !important;
    border: none !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}
.svt-dynamic-price-filter .price_slider .ui-slider-range {
    background: var(--svt-ink) !important;
    top: 0 !important;
}
/* Handles */
.svt-dynamic-price-filter .price_slider .ui-slider-handle {
    width: 18px !important;
    height: 18px !important;
    top: 50% !important;
    margin-top: -9px !important;
    margin-left: -9px !important;
    background: var(--svt-card) !important;
    border: 2px solid var(--svt-ink) !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18) !important;
    cursor: grab !important;
    outline: none !important;
    transition: box-shadow 0.15s ease, transform 0.12s ease, border-color 0.15s ease;
}
.svt-dynamic-price-filter .price_slider .ui-slider-handle:hover,
.svt-dynamic-price-filter .price_slider .ui-slider-handle.ui-state-focus,
.svt-dynamic-price-filter .price_slider .ui-slider-handle.ui-state-active {
    border-color: #000 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28) !important;
    transform: scale(1.06);
}
.svt-dynamic-price-filter .price_slider .ui-slider-handle.ui-state-active {
    cursor: grabbing !important;
}

/* Subtle applying state while navigation fires */
.svt-dynamic-price-filter.is-applying {
    opacity: 0.72;
    pointer-events: none;
}
.svt-dynamic-price-filter.is-applying .price_slider_amount .price_label {
    background: transparent !important;
    background-color: transparent !important;
}

/* Product categories sidebar widget */
.svt-product-categories-box {
    border: 1px solid #E5E1D8;
    padding: 0;
    margin-bottom: 16px;
    background: transparent;
}
.svt-product-categories-box .widget-title {
    display: none;
}
.svt-product-categories-box .svt-product-category-list {
    margin: 0;
    padding: 0 14px 8px;
    border: 0;
    list-style: none outside;
    max-height: none;
    overflow: visible;
}
.svt-product-categories-box .svt-product-category-list li {
    padding: 0 0 2px;
    list-style: none;
    font-size: 14px;
    line-height: 22px;
}
.svt-product-categories-box .svt-product-category-list li:after {
    content: "";
    display: block;
    clear: both;
}
.svt-product-categories-box .svt-product-category-list li a {
    padding: 1px 0;
    float: left;
    color: var(--svt-click-ink);
    text-decoration: none;
}
.svt-product-categories-box .svt-product-category-list li span.count {
    padding: 1px 0;
    float: left;
    color: var(--svt-slate-ink);
    text-decoration: none;
}
.svt-product-categories-box .svt-product-category-list li span.count {
    padding: 0 2px;
    font-size: 80%;
    color: var(--svt-ink, #26231E); /*b53 was opacity 0.8*/
    float: right;
}
.svt-product-categories-box .svt-product-category-list li a:before {
    display: inline-block;
    font-size: 100%;
    margin-right: 0.618em;
    font-weight: normal;
    line-height: 1em;
    width: 1em;
    content: "\f111";
    color: var(--svt-slate-ink);
    font-family: rhicons;
}
.svt-product-categories-box .svt-product-category-list li.chosen a:before,
.svt-product-categories-box .svt-product-category-list li a:hover:before {
    content: "\e907";
    color: var(--svt-click-ink);
}
.svt-product-categories-box .svt-product-category-list li.chosen a:hover:before {
    content: "\f057";
}
.svt-product-categories-box.svt-is-scrollable {
    position: static;
    padding-bottom: 0;
}
.svt-product-categories-box.svt-is-scrollable .svt-product-category-list {
    box-shadow: none;
    border-bottom: 0;
    max-height: none;
    overflow: visible;
}
.svt-shop-brands {
    display: none;
    border: 1px solid var(--svt-hairline);
    padding: 0;
    margin-bottom: 16px;
    background: transparent;
    box-sizing: border-box;
}
@media (min-width: 769px) {
    .svt-shop-brands {
        display: revert;
    }
    details.svt-shop-brands:not([open]) > *:not(summary) {
        display: none !important;
    }
}
.svt-shop-brands__title {
    font-weight: 700;
    font-size: 16px;
    padding: 0 0 8px;
    margin: 0 0 6px;
    line-height: 1.2;
    color: #111;
}
.svt-shop-brands__list {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
}
.svt-shop-brands__item {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    padding: 1px 0;
    font-size: 14px;
    line-height: 22px;
}
.svt-shop-brands__item[hidden],
.svt-shop-brands__item--extra,
.svt-filter-extra[hidden] {
    display: none !important;
}
.svt-shop-brands.is-expanded .svt-shop-brands__item--extra {
    display: block !important;
}
.svt-shop-brands__link {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    width: 100%;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}
.svt-shop-brands__link:hover {
    text-decoration: none;
}
.svt-shop-brands__name {
    min-width: 0;
    flex: 1 1 auto;
}
.svt-shop-brands__count {
    flex: 0 0 auto;
    color: var(--svt-ink, #26231E); /*b53*/
    font-size: 80%;
    /*b53 opacity 0.8 removed*/
}
.svt-shop-brands__more {
    display: inline-block;
    margin-top: 8px;
    padding: 0;
    border: 0;
    background: none;
    font-size: 13px;
    line-height: 1.3;
    color: var(--svt-slate-ink);
    text-decoration: none;
    cursor: pointer;
}
.svt-shop-brands__more:hover {
    text-decoration: underline;
}
.svt-shop-brands__extra {
    margin: 0;
}
.svt-shop-brands__extra summary {
    list-style: none;
}
.svt-shop-brands__extra summary::-webkit-details-marker {
    display: none;
}
.svt-shop-brands__more-close {
    display: none;
}
.svt-shop-brands__extra[open] > .svt-shop-brands__more .svt-shop-brands__more-open {
    display: none;
}
.svt-shop-brands__extra[open] > .svt-shop-brands__more .svt-shop-brands__more-close {
    display: inline;
}
.svt-shop-brands__extra .svt-shop-brands__list {
    margin-top: 0;
}
.svt-product-categories-box.svt-is-scrollable::after {
    display: none;
}

/* Dynamic attribute filters box */
.svt-attribute-filters-box {
    border: none;
    padding: 0;
    margin-bottom: 0;
    background: transparent;
    background-color: transparent;
}
.svt-attribute-filters-box .svt-dynamic-layered-nav {
    border: 1px solid #E5E1D8;
    padding: 0;
    margin-bottom: 16px;
    background: transparent;
}
.svt-attribute-filters-box .svt-dynamic-layered-nav:last-child {
    margin-bottom: 16px;
}
.svt-attribute-filters-box .widget-title {
    display: none;
}

.svt-attribute-filters-box .woocommerce-widget-layered-nav-list {
    max-height: none;
    overflow: visible;
    padding: 0 14px 8px;
    margin: 0;
}
.svt-attribute-filters-box .svt-dynamic-layered-nav.svt-is-scrollable,
.svt-product-categories-box.svt-is-scrollable {
    position: static;
    padding-bottom: 0;
}
.svt-attribute-filters-box .svt-dynamic-layered-nav.svt-is-scrollable .woocommerce-widget-layered-nav-list,
.svt-product-categories-box.svt-is-scrollable .svt-product-category-list {
    box-shadow: none;
    border-bottom: 0;
    max-height: none;
    overflow: visible;
}
.svt-attribute-filters-box .svt-dynamic-layered-nav.svt-is-scrollable::after,
.svt-product-categories-box.svt-is-scrollable::after {
    display: none;
}

/* Filter checkmarks — click (chosen / hover) */
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list li a:before,
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list__item a:before {
    color: var(--svt-slate-ink);
}
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list li.chosen a:before,
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list__item--chosen a:before,
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list li a:hover:before,
.widget_layered_nav li.chosen a:before {
    color: var(--svt-click-ink) !important;
}
.svt-attribute-filters-box .woocommerce-widget-layered-nav-list li a {
    color: var(--svt-click-ink);
}

/* Filter accordion: Price + Categories open; long groups start closed. */
.svt-filter-acc {
    border: 1px solid #E5E1D8;
    margin-bottom: 16px;
    background: transparent;
    box-sizing: border-box;
}
.svt-filter-acc__sum {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
    padding: 14px;
    list-style: none;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.2;
    color: #111;
    cursor: pointer;
}
.svt-filter-acc__sum::-webkit-details-marker,
.svt-filter-acc__sum::marker {
    display: none;
    content: none;
}
/* Same muted down-chevron as compare accordion (.svt-cmp-chev). Plus is add. */
.svt-filter-acc__sum::after {
    content: "";
    flex: 0 0 auto;
    width: 0;
    height: 0;
    margin-left: auto;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid var(--svt-cmp-faint, #9A9488);
    transition: transform 0.15s ease;
}
.svt-filter-acc[open] > .svt-filter-acc__sum::after {
    transform: rotate(180deg);
}

/* Desktop sidebar: scores-header chrome + brand rows. Mobile unchanged. */
@media (min-width: 769px) {
    .svt-shop-brands,
    .svt-filter-acc {
        border-radius: 10px;
        overflow: hidden;
    }
    .svt-shop-brands__title,
    .svt-filter-acc__sum,
    .svt-score-legend-slot--sidebar .svt-score-legend__banner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin: 0;
        padding: 10px 14px;
        border-bottom: 1px solid var(--svt-hairline);
        background: var(--svt-hairline);
        background-color: var(--svt-hairline);
        box-sizing: border-box;
        font-size: 18px;
        font-weight: 700;
        letter-spacing: 0.01em;
        line-height: 1.25;
        color: #222;
        text-align: left;
    }
    .svt-score-legend-slot--sidebar .svt-score-legend,
    .svt-score-legend-slot--sidebar .svt-score-legend__items--blend {
        text-align: left;
    }
    .svt-score-legend-slot--sidebar .svt-score-legend__banner {
        justify-content: flex-start;
        text-align: left;
    }
    .svt-product-categories-box .svt-product-category-list {
        padding: 8px 0;
        max-height: none !important;
        overflow: visible !important;
    }
    .svt-product-categories-box .svt-product-category-list li {
        display: block;
        padding: 0;
        margin: 0;
        float: none;
        line-height: 1.4;
    }
    .svt-product-categories-box .svt-product-category-list li:after {
        display: none;
    }
    .svt-product-categories-box .svt-product-category-list li a {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 6px;
        float: none;
        width: 100%;
        padding: 8px 14px;
        box-sizing: border-box;
        line-height: 1.4;
        color: inherit;
        text-decoration: none;
        cursor: pointer;
        background: transparent;
    }
    .svt-product-categories-box .svt-product-category-list li a:before,
    .svt-product-categories-box .svt-product-category-list li a::before,
    .svt-product-categories-box .svt-product-category-list li.chosen a:before,
    .svt-product-categories-box .svt-product-category-list li a:hover:before,
    .svt-product-categories-box .svt-product-category-list li.chosen a:hover:before,
    .woocommerce .svt-product-categories-box .svt-product-category-list li a:before {
        content: none !important;
        display: none !important;
        width: 0 !important;
        margin: 0 !important;
    }
    .svt-product-categories-box .svt-product-category-list li a:hover,
    .svt-product-categories-box .svt-product-category-list li a:focus-visible {
        background: transparent;
        text-decoration: none;
        outline: none;
    }
    .svt-product-categories-box .svt-product-category-list .svt-product-category-name {
        color: inherit;
        text-decoration: none;
    }
    .svt-product-categories-box .svt-product-category-list li a:hover .svt-product-category-name,
    .svt-product-categories-box .svt-product-category-list li a:focus-visible .svt-product-category-name {
        color: var(--svt-click-ink);
        text-decoration: underline;
    }
    .svt-product-categories-box .svt-product-category-list li span.count {
        float: none;
        margin-left: 0;
        padding: 0;
        color: var(--svt-ink, #26231E); /*b53*/
        font-size: 80%;
        /*b53 opacity 0.8 removed*/
        text-decoration: none;
    }
    form.woocommerce-ordering .nice-select.orderby,
    form.woocommerce-ordering .nice-select.orderby:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering .nice-select.orderby,
    .woocommerce .woocommerce-ordering .nice-select.orderby:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering .nice-select,
    .woocommerce .woocommerce-ordering .nice-select:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering select.orderby,
    .woocommerce .woocommerce-ordering select.orderby:is(:hover, :focus, :focus-visible, :active) {
        background: var(--svt-surface-control, #FFFFFF) !important;
        background-color: var(--svt-surface-control, #FFFFFF) !important;
        background-image: none !important;
        border: 1px solid #D6D1C7 !important;
        border-color: #D6D1C7 !important;
        box-shadow: none !important;
        outline: none;
        -webkit-tap-highlight-color: transparent;
    }
    form.woocommerce-ordering .nice-select.orderby .list,
    .woocommerce .woocommerce-ordering .nice-select.orderby .list,
    .woocommerce .woocommerce-ordering .nice-select .list {
        background: var(--svt-surface-control, #FFFFFF) !important;
        background-color: var(--svt-surface-control, #FFFFFF) !important;
        border: 1px solid #D6D1C7 !important;
        border-radius: 10px !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        left: 0 !important;
        right: 0 !important;
    }
    form.woocommerce-ordering .nice-select.orderby .option,
    .woocommerce .woocommerce-ordering .nice-select.orderby .option,
    .woocommerce .woocommerce-ordering .nice-select .option {
        background: transparent !important;
        background-color: transparent !important;
        white-space: normal !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    form.woocommerce-ordering .nice-select.orderby .option.selected,
    form.woocommerce-ordering .nice-select.orderby .option:hover,
    form.woocommerce-ordering .nice-select.orderby .option.focus,
    .woocommerce .woocommerce-ordering .nice-select.orderby .option.selected,
    .woocommerce .woocommerce-ordering .nice-select.orderby .option:hover,
    .woocommerce .woocommerce-ordering .nice-select.orderby .option.focus,
    .woocommerce .woocommerce-ordering .nice-select .option.selected,
    .woocommerce .woocommerce-ordering .nice-select .option:hover,
    .woocommerce .woocommerce-ordering .nice-select .option.focus {
        color: var(--svt-click-ink) !important;
        background: var(--svt-surface-control-on, #F2EEE6) !important;
        background-color: var(--svt-surface-control-on, #F2EEE6) !important;
    }
    .svt-shop-brands__list {
        padding: 8px 0;
    }
    .svt-shop-brands__item {
        display: block;
        padding: 0;
        margin: 0;
        line-height: 1.4;
    }
    .svt-shop-brands__link {
        padding: 8px 14px;
        align-items: center;
        line-height: 1.4;
        background: transparent;
    }
    .svt-shop-brands__link::before,
    .svt-shop-brands__link:hover::before,
    .svt-shop-brands__link:focus-visible::before {
        content: none !important;
        display: none !important;
        width: 0 !important;
        margin: 0 !important;
    }
    .svt-shop-brands__link:hover,
    .svt-shop-brands__link:focus-visible {
        background: transparent;
        text-decoration: none;
        outline: none;
    }
    .svt-shop-brands__link:hover .svt-shop-brands__name,
    .svt-shop-brands__link:focus-visible .svt-shop-brands__name {
        color: var(--svt-click-ink);
        text-decoration: underline;
    }
    .svt-shop-brands__link:hover .svt-shop-brands__count,
    .svt-shop-brands__link:focus-visible .svt-shop-brands__count {
        color: var(--svt-ink, #26231E); /*b53*/
        /*b53 opacity 0.8 removed*/
        text-decoration: none;
    }
    .svt-shop-brands__more,
    .svt-filter-more {
        display: inline-block;
        width: auto;
        max-width: calc(100% - 28px);
        margin: 2px 14px 12px;
        padding: 0;
        border: 0;
        background: none;
        box-shadow: none;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.35;
        color: var(--svt-click-ink);
        text-decoration: none;
        cursor: pointer;
    }
    .svt-shop-brands__more:hover,
    .svt-shop-brands__more:focus-visible,
    .svt-filter-more:hover,
    .svt-filter-more:focus-visible {
        color: var(--svt-click-deep);
        background: none;
        text-decoration: underline;
        outline: none;
    }

    /* Attribute lists: same row rhythm as Brands / Categories. Keep filter dots. */
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list {
        padding: 8px 0 !important;
        margin: 0;
    }
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list li,
    .woocommerce .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li,
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list__item {
        display: flex !important;
        align-items: center !important;
        gap: 6px;
        float: none !important;
        padding: 8px 14px !important;
        margin: 0 !important;
        line-height: 1.4 !important;
        list-style: none;
        box-sizing: border-box;
    }
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li:after,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list li:after {
        display: none !important;
    }
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list li a,
    .woocommerce .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a,
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list__item a {
        display: flex !important;
        align-items: center !important;
        float: none !important;
        width: auto !important;
        flex: 1 1 auto;
        min-width: 0;
        padding: 0 !important;
        line-height: 1.4 !important;
        box-sizing: border-box;
    }
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a:before,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list li a:before,
    .woocommerce .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a:before,
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list__item a:before {
        display: inline-block !important;
        flex: 0 0 auto;
        align-self: center;
        width: 1em;
        margin: 0 8px 0 0 !important;
        vertical-align: middle;
        line-height: 1;
    }
    .svt-filter-acc--attr .woocommerce-widget-layered-nav-list .count,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list .count,
    .woocommerce .svt-filter-acc--attr .woocommerce-widget-layered-nav-list .count {
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: 0 0 auto;
        line-height: 1.4;
    }

    /* Grow in place. Hide extras; never clip or scroll the list. */
    .svt-shop-brands,
    .svt-filter-acc,
    .svt-product-categories-box,
    .svt-attribute-filters-box,
    .svt-dynamic-layered-nav {
        max-height: none !important;
    }
    .svt-shop-brands__list,
    .svt-product-categories-box .svt-product-category-list,
    .svt-attribute-filters-box .woocommerce-widget-layered-nav-list,
    .svt-filter-acc .woocommerce-widget-layered-nav-list,
    .svt-filter-acc ul,
    .sidebar .svt-filter-acc ul,
    .sidebar .widget_layered_nav ul,
    .woocommerce .widget_layered_nav ul,
    .woocommerce .widget_product_categories ul,
    .woocommerce .svt-filter-acc .woocommerce-widget-layered-nav-list {
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
}
.svt-filter-more {
    display: inline-block;
    margin: 0 14px 12px;
    padding: 0;
    border: 0;
    background: none;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
    color: inherit;
    cursor: pointer;
    text-decoration: none;
}
.svt-filter-more:hover {
    text-decoration: underline;
}
@media (min-width: 769px) {
    .svt-shop-brands__more,
    .svt-filter-more {
        color: var(--svt-click-ink);
        font-weight: 500;
        cursor: pointer;
    }
    .svt-shop-brands__more:hover,
    .svt-shop-brands__more:focus-visible,
    .svt-filter-more:hover,
    .svt-filter-more:focus-visible {
        color: var(--svt-click-deep);
        background: none;
        text-decoration: underline;
    }
}

.svt-active-filters:empty {
    display: none !important;
}
.svt-active-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    flex-basis: 100%;
    margin: 0 0 12px;
}
.svt-active-filters__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}
@media (min-width: 769px) {
    .svt-active-filters {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        width: 100%;
        flex-basis: 100%;
        margin: 20px 0 14px;
        box-sizing: border-box;
    }
    .svt-active-filters__list {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .svt-active-filters__item {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .svt-active-filters__chip {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 32px;
        padding: 6px 12px;
        border: 1px solid #D6D1C7;
        border-radius: 8px;
        background: var(--svt-surface-control, #FFFFFF);
        background-color: var(--svt-surface-control, #FFFFFF);
        color: var(--svt-ink, #26231E);
        font-size: 13px;
        font-weight: 500;
        line-height: 1.3;
        text-decoration: none;
        box-sizing: border-box;
    }
    .svt-active-filters__chip:hover,
    .svt-active-filters__chip:focus-visible {
        border-color: var(--svt-slate, #79746A);
        color: var(--svt-ink, #26231E);
        text-decoration: none;
        outline: none;
    }
    .svt-active-filters__label {
        color: var(--svt-ink, #26231E);
    }
    .svt-active-filters__x {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 22px;
        min-height: 22px;
        margin: -2px -4px -2px 0;
        color: var(--svt-slate-ink, #655F55);
        font-size: 16px;
        line-height: 1;
        font-weight: 600;
    }
    .svt-active-filters__chip:hover .svt-active-filters__x,
    .svt-active-filters__chip:focus-visible .svt-active-filters__x {
        color: var(--svt-ink, #26231E);
    }
    .svt-active-filters__clear {
        padding: 6px 4px;
        border: 0;
        background: none;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.3;
        color: var(--svt-click-ink);
        text-decoration: none;
        cursor: pointer;
    }
    .svt-active-filters__clear:hover,
    .svt-active-filters__clear:focus-visible {
        color: var(--svt-click-deep);
        background: none;
        text-decoration: underline;
        outline: none;
    }
    .widget_layered_nav_filters,
    .woocommerce-widget-layered-nav-filters {
        display: none !important;
    }
}

/* Mobile Filter trigger — click, override Rehub .rehub-main-color */
#mobile-trigger-sidebar,
#mobile-trigger-sidebar.rehub-main-color {
    color: var(--svt-click-ink) !important;
    font-weight: 700 !important;
}
#mobile-trigger-sidebar:hover,
#mobile-trigger-sidebar.rehub-main-color:hover {
    color: var(--svt-click-deep) !important;
}

/* Shop archive toolbar: breadcrumbs, result count, sorting */
nav.woocommerce-breadcrumb {
    margin-bottom: 14px !important;
}

/*
 * Product category / shop archives: left filters start next to breadcrumb+h1 while the
 * product grid sits lower. Desktop offset is applied by svt_align_shop_sidebar_to_products_script
 * in functions.php (measures .products top vs aside.sidebar) — do not reintroduce magic px.
 * Brand archives (tax-product_brand) intentionally skip that script so the logo stays high.
 * Mobile (≤1023): script clears margin so #rh_woo_mbl_sidebar drawer is not pushed.
 */

nav.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb a {
    font-weight: 700;
    color: var(--svt-click-ink) !important;
}

/*
 * PDP mobile: hide last breadcrumb (product title) and trailing delimiter.
 * Rehub last crumb is a text node; font-size:0 collapses that line.
 * Desktop unchanged. Archives unaffected (.single-product only).
 */
@media (max-width: 767px) {
    .single-product nav.woocommerce-breadcrumb {
        font-size: 0;
        line-height: 0;
    }
    .single-product nav.woocommerce-breadcrumb a,
    .single-product nav.woocommerce-breadcrumb span.delimiter,
    .single-product nav.woocommerce-breadcrumb span.delimiter i {
        font-size: 14px;
        line-height: 18px;
    }
    .single-product nav.woocommerce-breadcrumb > span.delimiter:last-child,
    .single-product nav.woocommerce-breadcrumb span:last-child:not(.delimiter) {
        display: none !important;
    }
}

.woocommerce .woocommerce-result-count {
    font-weight: 700 !important;
    font-style: normal !important;
    color: #111111;
}

.woocommerce .woocommerce-ordering .nice-select,
.woocommerce .woocommerce-ordering select.orderby,
form.woocommerce-ordering .nice-select.orderby,
.woocommerce .woocommerce-ordering .nice-select.orderby {
    background: var(--svt-surface-control, #FFFFFF) !important;
    background-color: var(--svt-surface-control, #FFFFFF) !important;
    background-image: none !important;
    border: 1px solid #D6D1C7 !important;
    border-color: #D6D1C7 !important;
    font-weight: 700 !important;
}
form.woocommerce-ordering .nice-select.orderby .list,
.woocommerce .woocommerce-ordering .nice-select.orderby .list,
.woocommerce .woocommerce-ordering .nice-select .list {
    background: var(--svt-surface-control, #FFFFFF) !important;
    background-color: var(--svt-surface-control, #FFFFFF) !important;
    border: 1px solid #D6D1C7 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
}

.woocommerce .woocommerce-ordering .nice-select .current {
    font-weight: 700 !important;
}

.woocommerce .woocommerce-ordering .nice-select:hover,
.woocommerce .woocommerce-ordering select.orderby:hover {
    border-color: #D6D1C7 !important;
}

/* Tighter gap between sort bar and product grid */
.woocommerce .woocommerce-ordering {
    margin-bottom: 1em !important;
}

.woocommerce .products {
    margin-top: 0.5em !important;
}

/* Product cards / loop: expert (orange) + social average (blue) radial circles */
.svt-loop-scores {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 4px; /* top set via grid card pin rule */
    line-height: 0;
}
.svt-loop-circle {
    flex: 0 0 auto;
    line-height: 0;
    position: relative;
    overflow: visible;
}
/* Ring fill / ticks / no-glow: css/svt-score-ring.css. Pulse removed. */
.svt-loop-circle .radial-progress:not(.is-unscored) {
    position: relative;
    overflow: visible;
    z-index: 0;
}
.svt-loop-circle .radial-progress::before,
.svt-loop-circle .radial-progress::after {
    content: none !important;
    display: none !important;
    animation: none !important;
}
/*
 * Card side labels: [ring][Usability Score] [ring][Social Score]
 * Text height stays inside the 50px ring band (2-line wrap, not stacked under).
 */
.woocommerce .products.grid_woo .product .svt-loop-score-unit {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex: 0 1 auto;
    min-width: 0;
    max-width: calc(50% - 5px);
    line-height: 0;
}
.woocommerce .products.grid_woo .product .svt-loop-score-label {
    display: block;
    flex: 0 0 auto;
    width: auto;
    max-width: 4.2em;
    margin: 0;
    padding: 0;
    font-size: 9px;
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: 0.01em;
    color: var(--svt-ink);
    white-space: normal;
    text-align: left;
}
.woocommerce .products.grid_woo .product .svt-loop-score-unit.is-expert .svt-loop-score-label,
.woocommerce .products.grid_woo .product .svt-loop-score-unit.is-social .svt-loop-score-label {
    color: var(--svt-ink);
}
/* Site-wide score captions: same ink as score numerals. Rings stay colored. */
.svt-loop-score-label,
.svt-product-score-caption,
.svt-score-caption,
.svt-score-legend__label,
.svt-loop-score-unit.is-expert .svt-loop-score-label,
.svt-loop-score-unit.is-social .svt-loop-score-label,
.svt-product-score-item.is-expert .svt-product-score-caption,
.svt-product-score-item.is-social .svt-product-score-caption {
    color: var(--svt-ink);
}
/* Score rings a bit under Rehub’s default 65px */
.svt-loop-scores .radial-progress {
    margin: 0;
    width: 50px;
    height: 50px;
    background-color: var(--svt-track);
}
.svt-loop-scores .radial-progress .circle .mask,
.svt-loop-scores .radial-progress .circle .fill,
.svt-loop-scores .radial-progress .circle .shadow {
    width: 50px;
    height: 50px;
}
.svt-loop-scores .radial-progress .circle .mask {
    clip: rect(0px, 50px, 50px, 25px);
}
.svt-loop-scores .radial-progress .circle .mask .fill {
    clip: rect(0px, 25px, 50px, 0px);
    background-color: var(--svt-brass); /* usability + social — same brass fill */
}
.svt-loop-scores .radial-progress.is-social .circle .mask .fill {
    background-color: var(--svt-brass);
}
.table_view_charts .svt-compare-header-scores .radial-progress .inset {
    background: var(--svt-ink) !important;
    background-color: var(--svt-ink) !important;
}
.svt-score-legend .radial-progress .inset {
    background: var(--svt-ink) !important;
    background-color: var(--svt-ink) !important;
}
.svt-product-scores-row .radial-progress .inset,
.single-product .svt-product-scores-row .radial-progress .inset,
.svt-product-scores-row .svt-loop-scores .radial-progress .inset,
.svt-loop-scores .radial-progress .inset {
    background: var(--svt-ink) !important;
    background-color: var(--svt-ink) !important;
    box-shadow: none;
}
/* Grid cards: product-page inverted circle (dark inset, white number). Size unchanged. */
.woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .inset,
.woocommerce .products .product.col_item.woo_grid_compact .svt-loop-scores .radial-progress .inset {
    background: var(--svt-ink) !important;
    background-color: var(--svt-ink) !important;
    box-shadow: none;
}
.woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .inset .percentage,
.woocommerce .products .product.col_item.woo_grid_compact .svt-loop-scores .radial-progress .inset .percentage {
    color: #fff !important;
}
.woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress.is-unscored .inset,
.woocommerce .products .product.col_item.woo_grid_compact .svt-loop-scores .radial-progress.is-unscored .inset {
    background: var(--svt-page, #F2EEE6) !important;
    background-color: var(--svt-page, #F2EEE6) !important;
}
.woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress.is-unscored .inset .percentage,
.woocommerce .products .product.col_item.woo_grid_compact .svt-loop-scores .radial-progress.is-unscored .inset .percentage {
    color: var(--svt-ink, #26231E) !important;
}
/* Catalog cards: disc paint lives in css/svt-score-ring.css. */
.woocommerce .products .svt-loop-scores .radial-progress:not(.is-unscored),
.woocommerce .products .svt-loop-scores .radial-progress.is-green-in:not(.is-unscored) {
    background-color: transparent !important;
}
.svt-loop-scores .radial-progress .inset .percentage {
    width: auto;
    font-size: calc(var(--sz, 50px) * 0.42);
    line-height: 1;
    margin-top: 0;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #fff;
}
/*
 * Mobile narrow grid cards (2-col): scale rings + side labels ~72% so both
 * [circle][Usability Score] [circle][Social Score] units fit without overlap.
 * Grid cards only — single-product scores unchanged. One-decimal numbers stay.
 */
@media (max-width: 767px) {
    /*
     * 2-col cards: cluster units from left with an 8px mid gap (not space-between).
     * Outer edges unchanged: padding-left 0 / padding-right 8px. Units stay glued
     * (circle+label); only the gap between units is the mid space.
     */
    .woocommerce .products.grid_woo .product .svt-loop-scores {
        justify-content: flex-start;
        gap: 8px;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding-top: 4px;
        padding-bottom: 4px;
        padding-left: 0;
        padding-right: 8px;
        margin-left: 0;
        margin-right: 0;
        overflow: visible;
    }
    .woocommerce .products.grid_woo .product .svt-loop-score-unit {
        gap: 3px;
        flex: 0 0 auto;
        max-width: calc(50% - 2px);
        margin-left: 0;
        margin-right: 0;
        box-sizing: border-box;
        overflow: visible;
    }
    .woocommerce .products.grid_woo .product .svt-loop-score-unit.is-expert {
        margin-left: 0;
    }
    .woocommerce .products.grid_woo .product .svt-loop-score-unit.is-social {
        margin-right: 0;
        max-width: calc(50% - 6px);
    }
    /* Shop page 1506 only: nudge Social circle+label slightly right. Usability stays. */
    article#page-1506 .products.grid_woo .product .svt-loop-score-unit.is-social {
        margin-left: 6px;
        max-width: calc(50% - 12px);
    }
    .woocommerce .products.grid_woo .product .svt-loop-score-label {
        max-width: 4.2em;
        font-size: 7.5px;
        line-height: 1.15;
        overflow: visible;
        flex-shrink: 0;
    }
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress {
        width: 36px;
        height: 36px;
    }
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .circle .mask,
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .circle .fill,
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .circle .shadow {
        width: 36px;
        height: 36px;
    }
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .circle .mask {
        clip: rect(0px, 36px, 36px, 18px);
    }
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .circle .mask .fill {
        clip: rect(0px, 18px, 36px, 0px);
    }
    .woocommerce .products.grid_woo .product .svt-loop-scores .radial-progress .inset .percentage {
        width: auto;
        font-size: calc(var(--sz, 36px) * 0.42);
        line-height: 1;
        margin-top: 0;
    }
}
/* Single product rings: same number weight/color as cards (size via tabs/caption CSS) */
.single-product .svt-product-scores-row .radial-progress .inset .percentage {
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums;
    color: var(--svt-ink) !important;
}
/* Hide any WC star markup that leaks into the loop */
.products .rh_woo_star {
    display: none !important;
}

/* Desktop: overall scores in the sidebar above Price. Mobile: footer copy. */
.svt-score-legend-slot--top,
.svt-score-legend-slot--sidebar {
    display: none;
    width: 100%;
}
.svt-score-legend-slot--sidebar {
    margin: 0 0 16px;
}
.svt-score-legend-slot--sidebar .svt-score-legend {
    width: 100%;
    max-width: 100%;
}
@media (min-width: 768px) {
    .svt-score-legend-slot--sidebar {
        display: block;
    }
    .svt-score-legend-slot--top,
    .svt-archive-footer-bar .svt-score-legend {
        display: none !important;
    }
}

/* Score key — grid-placed left of true-centered pagination in footer bar */
.svt-score-legend {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--svt-hairline);
    border-radius: 10px;
    background: transparent;
    box-sizing: border-box;
    font-size: 13px;
    line-height: 1.25;
    color: var(--svt-ink);
    text-align: left;
}
/* Top banner strip inside the scores box (brand / category / catalog) */
.svt-score-legend__banner {
    display: block;
    margin: 0;
    padding: 10px 14px;
    border-bottom: 1px solid var(--svt-hairline);
    background: var(--svt-hairline);
    box-sizing: border-box;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.25;
    color: #222;
    text-align: left;
    justify-content: flex-start;
    white-space: normal;
}
.svt-archive-footer-bar .svt-score-legend__banner {
    text-align: left;
    justify-content: flex-start;
}
.svt-score-legend__items {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 0;
    padding: 10px 12px;
    background: transparent;
}
.svt-score-legend__item {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    margin: 0;
    padding: 0;
    vertical-align: middle;
}
.svt-score-legend__circle {
    display: block;
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    line-height: 0;
    pointer-events: none;
}
.svt-score-legend__circle .svt-loop-circle {
    display: block;
    width: 64px;
    height: 64px;
    margin: 0;
    padding: 0;
    float: none;
}
/* Overall-scores radials — size/stroke live in css/svt-score-ring.css */
.svt-score-legend .radial-progress {
    margin: 0;
    width: 64px;
    height: 64px;
    float: none;
    min-width: 0;
    background-color: var(--svt-track);
}
.svt-score-legend .radial-progress .circle .mask,
.svt-score-legend .radial-progress .circle .fill,
.svt-score-legend .radial-progress .circle .shadow {
    width: 64px;
    height: 64px;
}
.svt-score-legend .radial-progress .circle .mask {
    clip: rect(0px, 64px, 64px, 32px);
}
.svt-score-legend .radial-progress .circle .mask .fill {
    clip: rect(0px, 32px, 64px, 0px);
    background-color: var(--svt-brass);
}
.svt-score-legend .radial-progress.is-social .circle .mask .fill {
    background-color: var(--svt-brass);
}
.svt-score-legend .radial-progress .inset {
    background: var(--svt-ink) !important;
    background-color: var(--svt-ink) !important;
    box-shadow: none;
}
.svt-score-legend .radial-progress .inset .percentage {
    font-size: calc(var(--sz, 64px) * 0.42);
    line-height: 1;
    margin-top: 0;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #fff !important;
}
.svt-score-legend__label {
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.01em;
    line-height: 1.25;
    color: var(--svt-ink);
    text-align: left;
    white-space: nowrap;
}

/*
 * Desktop sidebar Overall scores: same blend block as listing cards
 * (one disc + Usability/Social bars). Slot is already hidden on mobile.
 */
.svt-score-legend-slot--sidebar .svt-score-legend {
    width: 100%;
    max-width: 100%;
    text-align: left;
}
.svt-score-legend-slot--sidebar .svt-score-legend__items--blend {
    display: block;
    width: 100%;
    padding: 12px 14px;
    text-align: left;
    box-sizing: border-box;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0;
    line-height: 0 !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    line-height: 0 !important;
    padding: 0 !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-circle,
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .radial-progress,
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-score-ring {
    flex: 0 0 auto;
    width: 64px !important;
    height: 64px !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-parts {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    line-height: normal !important;
    text-align: left !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part {
    display: block !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-row {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 8px !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-lbl {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 9px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.15 !important;
    color: var(--svt-ink, #26231E) !important;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-ico {
    display: inline-block !important;
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    background-color: #3d3d3d;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-size: 16px 16px;
            mask-size: 16px 16px;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-ico.is-usability {
    -webkit-mask-image: url("svt-kit/icons/circle-check.svg?v=2");
            mask-image: url("svt-kit/icons/circle-check.svg?v=2");
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-ico.is-social {
    -webkit-mask-image: url("svt-kit/icons/message-circle.svg?v=2");
            mask-image: url("svt-kit/icons/message-circle.svg?v=2");
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-val {
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    color: var(--svt-ink, #26231E) !important;
    font-variant-numeric: tabular-nums;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-bar {
    display: block !important;
    height: 4px;
    margin-top: 2px;
    border-radius: 99px;
    background: var(--svt-remainder-green, #A1B096); /*b54*/
    overflow: hidden;
}
.svt-score-legend-slot--sidebar .svt-loop-scores--blend .svt-loop-part-bar i {
    display: block;
    height: 100%;
    width: var(--svt-bar-w, 0%);
    border-radius: 99px;
    background: var(--svt-brass, #C8842B);
}

/*
 * Mobile footer Overall scores: same card blend (one disc + bars).
 * Stays in the archive footer bar; only the inner layout changes.
 */
@media (max-width: 767px) {
    .svt-archive-footer-bar .svt-score-legend {
        width: 100% !important;
        max-width: 100% !important;
        text-align: left;
    }
    .svt-archive-footer-bar .svt-score-legend__banner {
        text-align: left;
        justify-content: flex-start;
        padding: 10px 14px;
        font-size: 18px;
        font-weight: 700;
        letter-spacing: 0.01em;
        line-height: 1.25;
    }
    .svt-archive-footer-bar .svt-score-legend__items--blend {
        display: block;
        width: 100%;
        padding: 12px 14px;
        text-align: left;
        box-sizing: border-box;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend {
        display: flex !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0;
        line-height: 0 !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: none !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        line-height: 0 !important;
        padding: 0 !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-circle,
    .svt-archive-footer-bar .svt-loop-scores--blend .radial-progress,
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-score-ring {
        flex: 0 0 auto;
        width: 56px !important;
        height: 56px !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-parts {
        display: flex !important;
        flex-direction: column !important;
        gap: 6px !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        line-height: normal !important;
        text-align: left !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part {
        display: block !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-row {
        display: flex !important;
        align-items: baseline !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-lbl {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        font-size: 9px !important;
        font-weight: 600 !important;
        letter-spacing: 0.01em !important;
        line-height: 1.15 !important;
        color: var(--svt-ink, #26231E) !important;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-ico {
        display: inline-block !important;
        flex: 0 0 auto;
        width: 16px;
        height: 16px;
        background-color: #3d3d3d;
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-position: center;
                mask-position: center;
        -webkit-mask-size: 16px 16px;
                mask-size: 16px 16px;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-ico.is-usability {
        -webkit-mask-image: url("svt-kit/icons/circle-check.svg?v=2");
                mask-image: url("svt-kit/icons/circle-check.svg?v=2");
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-ico.is-social {
        -webkit-mask-image: url("svt-kit/icons/message-circle.svg?v=2");
                mask-image: url("svt-kit/icons/message-circle.svg?v=2");
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-val {
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        color: var(--svt-ink, #26231E) !important;
        font-variant-numeric: tabular-nums;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-bar {
        display: block !important;
        height: 4px;
        margin-top: 2px;
        border-radius: 99px;
        background: var(--svt-remainder-green, #A1B096); /*b54*/
        overflow: hidden;
    }
    .svt-archive-footer-bar .svt-loop-scores--blend .svt-loop-part-bar i {
        display: block;
        height: 100%;
        width: var(--svt-bar-w, 0%);
        border-radius: 99px;
        background: var(--svt-brass, #C8842B);
    }
}

/* No wishlist / quick view leftovers */
.products .button_action .heart_thumb_wrap,
.products .button_action .heartplus,
.products .button_action > div:empty,
.products .button_action .quick_view_button,
.products .button_action .quick_view_wrap,
.products .button_action a[href*="quick"],
.products .button_action .withouthover.quick_view_button {
    display: none !important;
}

/* Compare lives in the footer now — hide the image-corner action stack */
.woocommerce .products.grid_woo .product .button_action {
    display: none !important;
}

/*
 * Footer stack (all grid breakpoints): price full-width row 1, then
 * Compare | Buy Now equal halves on row 2. Buy is first in the DOM;
 * grid-column places Compare left / Buy right. Never put price on the
 * CTA row — narrow 2-col cards smash when all three share a line.
 */
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    padding: 0 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    line-height: 1 !important;
    border: 1px solid var(--svt-cta) !important;
    border-width: 1px !important;
    border-style: solid !important;
    box-sizing: border-box !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
    overflow: hidden !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare-wrap {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 38px !important;
    max-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    line-height: 1 !important;
    flex: none !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare-wrap > p {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 38px !important;
    max-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 6px !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    border: 1px solid var(--svt-card) !important;
    border-radius: 3px !important;
    background: var(--svt-card) !important;
    background-color: var(--svt-card) !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    outline: none !important;
    outline-offset: -1px !important;
    filter: none !important;
    color: var(--svt-body) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    cursor: pointer;
    white-space: nowrap;
    box-sizing: border-box !important;
    overflow: hidden;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
/*
 * Dual-CTA chrome lock: Compare fills Buy 38px outer box (parent compact).
 * 1px border both, border-box. Nested Compare wrap/p must not shrink the chip.
 */
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding-block: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    border-width: 1px !important;
    border-style: solid !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
    top: auto !important;
}
/*
 * Winning equal-height lock (must match functions.php svt_grid_cta_equal_height_css).
 * Visible chips: 38px height+min+max, 1px border always, border-box. Idle Compare
 * uses a fill-colored 1px (var(--svt-card)) so hover cannot add height. Beats Rehub border:none.
 */
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn,
.woocommerce .products.grid_woo .product .btn_for_grid a.woo_loop_btn.svt-buy-now,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn,
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare,
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button,
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.small,
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare,
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.add_to_compare_button,
.woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding-block: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    border-width: 1px !important;
    border-style: solid !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}
.woocommerce a.woo_loop_btn.svt-buy-now,
.woocommerce .products.grid_woo a.woo_loop_btn.svt-buy-now,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn,
.woocommerce .products.grid_woo .product .btn_for_grid a.woo_loop_btn.svt-buy-now,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn {
    border: 1px solid var(--svt-cta) !important;
    border-color: var(--svt-cta) !important;
    box-sizing: border-box !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
}
.woocommerce a.woo_loop_btn.svt-buy-now:hover,
.woocommerce a.woo_loop_btn.svt-buy-now:focus,
.woocommerce a.woo_loop_btn.svt-buy-now:focus-visible,
.woocommerce a.woo_loop_btn.svt-buy-now:active,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:hover,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus-visible,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:active,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:hover,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:focus,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:focus-visible,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:active,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:hover,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:focus,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:focus-visible,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:active,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:hover,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:focus,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:focus-visible,
.woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:active {
    background: var(--svt-cta-deep) !important;
    background-color: var(--svt-cta-deep) !important;
    color: var(--svt-cta-text) !important;
    border: 1px solid var(--svt-slate) !important;
    border-color: var(--svt-slate) !important;
    border-width: 1px !important;
    box-sizing: border-box !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare:not(.comparing),
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button:not(.comparing),
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.small:not(.comparing),
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing),
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.add_to_compare_button:not(.comparing),
.woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing) {
    border: 1px solid var(--svt-card) !important;
    border-color: var(--svt-card) !important;
    box-sizing: border-box !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    outline: none !important;
    outline-offset: -1px !important;
}
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare-wrap {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: stretch !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 0 !important;
    padding-block: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    line-height: 1 !important;
}
.woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare-wrap > p {
    display: flex !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
    height: 100% !important;
    min-height: 38px !important;
    max-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-block: 0 !important;
    line-height: 1 !important;
}
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn:hover,
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn:focus,
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn:focus-visible,
.woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn:active,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:hover,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus-visible,
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:active,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):hover,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus-visible,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):active,
.woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing):hover,
.woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing):focus,
.woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing):active {
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
    border-width: 1px !important;
    border-style: solid !important;
    top: auto !important;
}
/* Leading plus square (add-to-compare intent; no markup / AJAX-safe) */
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare::before {
    content: "+" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border-radius: 2px !important;
    background: var(--svt-body) !important;
    color: var(--svt-card) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    text-shadow: none !important;
}
/* Hide theme compare <i> so only the + square shows */
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare i {
    display: none !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button .comparelabel {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
/* Default COMPARE size — scope off .comparing so fit CSS cannot revive residual text */
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button:not(.comparing) .comparelabel {
    font-size: 10px !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):hover,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus-visible,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):active {
    background: var(--svt-compare-hover-bg) !important;
    background-color: var(--svt-compare-hover-bg) !important;
    color: var(--svt-body) !important;
    border: 1px solid var(--svt-slate) !important;
    border-color: var(--svt-slate) !important;
    border-width: 1px !important;
    outline: none !important;
    outline-offset: -1px !important;
    box-shadow: none !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    top: auto !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:hover,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:focus,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:focus-visible,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:active {
    opacity: 1 !important;
    background: var(--svt-added-bg) !important;
    background-color: var(--svt-added-bg) !important;
    border: 1px solid var(--svt-added-border) !important;
    border-color: var(--svt-added-border) !important;
    color: var(--svt-added) !important;
    height: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    outline: none !important;
    outline-offset: -1px !important;
    top: auto !important;
}
/* Added state: checkmark in inverted square */
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing::before {
    content: "\2713" !important;
    background: var(--svt-card) !important;
    color: var(--svt-added) !important;
    font-size: 10px !important;
}
/*
 * .comparing: kill live “Compare” text node; show only ADDED via ::after.
 * Higher specificity (.wpsm-button.comparing) beats fit/inline font-size rules.
 */
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.comparing .comparelabel,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing .comparelabel {
    font-size: 0 !important;
    letter-spacing: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.comparing .comparelabel::after,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing .comparelabel::after {
    content: "Added" !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    color: var(--svt-added) !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.comparing:hover,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:hover {
    background: var(--svt-added-bg) !important;
    background-color: var(--svt-added-bg) !important;
    border: 1px solid var(--svt-added-border) !important;
    border-color: var(--svt-added-border) !important;
    color: var(--svt-added) !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.comparing:hover::before,
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:hover::before {
    background: var(--svt-card) !important;
    color: var(--svt-added) !important;
}
.woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:active {
    background: var(--svt-added-bg) !important;
    background-color: var(--svt-added-bg) !important;
    border: 1px solid var(--svt-added-border) !important;
    border-color: var(--svt-added-border) !important;
    color: var(--svt-added) !important;
    top: auto !important;
}

/*
 * Mobile (incl. brand/category 2-col): keep stacked footer — price row, then
 * equal Compare | Buy Now. Compact type/pad only; never put price on the CTA row.
 */
@media (max-width: 767px) {
    .woocommerce .products.grid_woo .product .border-top.abposbot {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 6px !important;
    }
    .woocommerce .products.grid_woo .product .price_for_grid {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 16px 0 0 !important;
        order: 1;
        overflow: visible !important;
    }
    .woocommerce .products.grid_woo .product .price_for_grid .price {
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.01em;
        overflow: visible !important;
        text-overflow: clip !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid,
    .woocommerce .products.grid_woo .product .btn_for_grid.floatright,
    .woocommerce .products.grid_woo .product .btn_for_grid.rh-flex-right-align {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        grid-template-rows: 32px !important;
        align-items: stretch !important;
        gap: 6px !important;
        column-gap: 6px !important;
        float: none !important;
        margin: 0 !important;
        margin-left: 0 !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        order: 2;
        position: relative !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare-wrap {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 100% !important;
        min-height: 32px !important;
        max-height: 32px !important;
        overflow: visible !important;
        display: flex !important;
        align-items: stretch !important;
        float: none !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid > * {
        height: 100% !important;
        min-height: 32px !important;
        max-height: 32px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid .woo_loop_btn,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: none !important;
        float: none !important;
        height: 100% !important;
        min-height: 32px !important;
        max-height: 32px !important;
        padding: 0 4px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        font-size: 9px !important;
        letter-spacing: 0 !important;
        line-height: 1 !important;
        border: 1px solid var(--svt-cta) !important;
        border-color: var(--svt-cta) !important;
        box-sizing: border-box !important;
        outline: none !important;
        box-shadow: none !important;
        overflow: hidden !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: stretch !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 100% !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
        gap: 3px !important;
        padding: 0 4px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        font-size: 9px !important;
        letter-spacing: 0 !important;
        line-height: 1 !important;
        border: 1px solid var(--svt-card) !important;
        border-color: var(--svt-card) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        outline: none !important;
        outline-offset: -1px !important;
        box-shadow: none !important;
        float: none !important;
        top: auto !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare::before {
        width: 11px !important;
        height: 11px !important;
        font-size: 10px !important;
        flex: 0 0 auto !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button:not(.comparing) .comparelabel {
        font-size: 9px !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.comparing .comparelabel::after,
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing .comparelabel::after {
        font-size: 9px !important;
        letter-spacing: 0 !important;
    }
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing,
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:hover,
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:focus,
    .woocommerce .products.grid_woo .product .svt-footer-compare.wpsm-button.wpsm-button-new-compare.comparing:active {
        height: 100% !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
        background: var(--svt-added-bg) !important;
        background-color: var(--svt-added-bg) !important;
        border: 1px solid var(--svt-added-border) !important;
        color: var(--svt-added) !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now .svt-buy-now__label,
    .woocommerce .products .woo_grid_compact .svt-buy-now__label {
        font-size: 9px !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
    }
    /* Same winning selectors as desktop lock — equal 32px on narrow cards */
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn,
    .woocommerce .products.grid_woo .product .btn_for_grid a.woo_loop_btn.svt-buy-now,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.small,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.add_to_compare_button,
    .woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        height: 100% !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
        padding-block: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        line-height: 1 !important;
        border-width: 1px !important;
        border-style: solid !important;
        outline: none !important;
        outline-offset: -1px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn {
        border: 1px solid var(--svt-cta) !important;
        border-color: var(--svt-cta) !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:hover,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:focus-visible,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now:active,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:hover,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:focus,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:focus-visible,
    .woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now.woo_loop_btn:active,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:hover,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:focus,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:focus-visible,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid a.svt-buy-now:active,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:hover,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:focus,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:focus-visible,
    .woocommerce .products.grid_woo .product.woo_grid_compact .btn_for_grid .woo_loop_btn:active {
        background: var(--svt-cta-deep) !important;
        background-color: var(--svt-cta-deep) !important;
        color: var(--svt-cta-text) !important;
        border: 1px solid var(--svt-slate) !important;
        border-color: var(--svt-slate) !important;
        border-width: 1px !important;
        box-sizing: border-box !important;
        outline: none !important;
        outline-offset: -1px !important;
        box-shadow: none !important;
        -webkit-box-shadow: none !important;
        transform: none !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 4px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        line-height: 1 !important;
        font-size: 9px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare:not(.comparing),
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button:not(.comparing),
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing),
    .woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing) {
        border: 1px solid var(--svt-card) !important;
        border-color: var(--svt-card) !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
        outline: none !important;
        outline-offset: -1px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare:not(.comparing):hover,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):hover,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):focus-visible,
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare.wpsm-button.wpsm-button-new-compare:not(.comparing):active,
    .woocommerce .products.grid_woo .product .btn_for_grid .add_to_compare_button:not(.comparing):hover {
        background: var(--svt-compare-hover-bg) !important;
        background-color: var(--svt-compare-hover-bg) !important;
        color: var(--svt-body) !important;
        border: 1px solid var(--svt-slate) !important;
        border-color: var(--svt-slate) !important;
        outline: none !important;
        outline-offset: -1px !important;
        height: 32px !important;
        min-height: 32px !important;
        max-height: 32px !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare-wrap {
        display: flex !important;
        height: 100% !important;
        min-height: 32px !important;
        max-height: 32px !important;
        padding-block: 0 !important;
    }
    .woocommerce .products.grid_woo .product .btn_for_grid .svt-footer-compare-wrap > p {
        display: flex !important;
        margin: 0 !important;
        height: 100% !important;
        min-height: 32px !important;
        max-height: 32px !important;
        padding-block: 0 !important;
    }
}

/*
 * Floating compare tray — fixed to VIEWPORT right edge (never shrinks site chrome).
 * Do NOT shrink .rh-outer-wrap / pad body: that left a dead white strip and made the
 * black header look “half width”. Tray overlays empty browser margin at the screen edge.
 * Product grid keeps normal width (sidebar layouts already sit left of the tray).
 */

#re-compare-icon-fixed {
    cursor: pointer; /* mobile tab + collapsed desktop tab */
    z-index: 10050 !important;
    position: fixed !important;
    top: 160px !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    width: var(--svt-compare-tray-w) !important;
    max-width: var(--svt-compare-tray-w) !important;
    height: auto !important;
    min-height: 0 !important;
    line-height: 1 !important;
    padding: 10px 10px 12px !important;
    box-sizing: border-box !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px;
    text-align: left !important;
    font-size: inherit !important;
    background: var(--svt-card) !important;
    border: 2px solid var(--svt-added-border) !important;
    border-right: none !important;
    border-radius: 12px 0 0 12px !important;
    box-shadow: 0 8px 28px color-mix(in srgb, var(--svt-ink) 18%, transparent) !important;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    transform: none !important;
    translate: none !important;
    inset-inline-end: 0 !important;
    inset-inline-start: auto !important;
}
#re-compare-icon-fixed:not(.rhhidden) {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    clip: auto !important;
    clip-path: none !important;
}
#re-compare-icon-fixed.rhhidden {
    display: none !important;
}
body:has(.svt-cmp) #re-compare-icon-fixed,
body:has(.svt-cmp) #re-compare-icon-fixed:not(.rhhidden),
body:has(.table_view_charts) #re-compare-icon-fixed,
body:has(.table_view_charts) #re-compare-icon-fixed:not(.rhhidden) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
#re-compare-icon-fixed:hover {
    background: var(--svt-card) !important;
    box-shadow: 0 10px 32px color-mix(in srgb, var(--svt-ink) 22%, transparent) !important;
    transform: none !important;
    translate: none !important;
    right: 0 !important;
}

/* Soft Added-green pulse while the tray has items — ongoing, not the score-badge one-shot */
@keyframes svt-compare-tray-glow {
    0%, 100% {
        box-shadow: 0 0 8px 1px color-mix(in srgb, var(--svt-added) 22%, transparent);
        opacity: 0.55;
    }
    50% {
        box-shadow: 0 0 16px 3px color-mix(in srgb, var(--svt-added) 38%, transparent);
        opacity: 1;
    }
}
#re-compare-icon-fixed.has-thumbs {
    overflow: visible;
}
#re-compare-icon-fixed.has-thumbs::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    z-index: -1;
    box-shadow: 0 0 10px 2px color-mix(in srgb, var(--svt-added) 28%, transparent);
    animation: svt-compare-tray-glow 3s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
    #re-compare-icon-fixed.has-thumbs::before {
        animation: none;
        color: var(--svt-body, #33302B); /*b53 was opacity 0.7*/
        box-shadow: 0 0 12px 2px color-mix(in srgb, var(--svt-added) 32%, transparent);
    }
}

/* Header CTA strip — pronounce COMPARE */
#re-compare-icon-fixed .re-compare-icon-toggle {
    order: 1;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px;
    position: relative !important;
    width: 100%;
    box-sizing: border-box;
    padding: 11px 12px !important;
    margin: 0 !important;
    line-height: 1 !important;
    color: var(--svt-paper) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    background: var(--svt-ink) !important;
    border-radius: 8px;
    box-shadow: 0 2px 10px color-mix(in srgb, var(--svt-ink) 28%, transparent);
}
#re-compare-icon-fixed:hover .re-compare-icon-toggle {
    background: var(--svt-ink) !important;
}
/* Kill theme’s second icon fade overlay */
#re-compare-icon-fixed .re-compare-icon-toggle:before,
#re-compare-icon-fixed.proccessed .re-compare-icon-toggle:before,
#re-compare-icon-fixed .proccessed.re-compare-icon-toggle:before {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
}
#re-compare-icon-fixed .re-compare-icon-toggle .rhicon,
#re-compare-icon-fixed .re-compare-icon-toggle .rhi-shuffle {
    display: none !important;
}
#re-compare-icon-fixed .re-compare-icon-toggle::after {
    content: "VERSUS";
    order: 1;
    flex: 1 1 auto;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    white-space: nowrap;
    color: var(--svt-paper);
}
/* Count badge — dark Added green, white number */
#re-compare-icon-fixed .re-compare-notice {
    order: 2;
    position: static !important;
    top: auto !important;
    left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 26px !important;
    height: 26px !important;
    padding: 0 7px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: var(--svt-added) !important;
    color: #fff !important;
    font: 700 13px/1 var(--svt-font-sans), sans-serif !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18) !important;
    transform: none !important;
    transition: transform 0.15s ease, background 0.15s ease;
}
#re-compare-icon-fixed.proccessed .re-compare-notice,
#re-compare-icon-fixed .proccessed .re-compare-notice {
    transform: scale(1.1) !important;
}

/* Vertical product list under the CTA */
#re-compare-icon-fixed .svt-compare-fixed-thumbs {
    order: 2;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    max-width: none;
    max-height: min(52vh, 360px);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 2px 0 0;
    scrollbar-width: thin;
    scrollbar-color: var(--svt-slate) transparent;
}
#re-compare-icon-fixed.has-thumbs .svt-compare-fixed-thumbs {
    display: flex;
}
#re-compare-icon-fixed .svt-compare-thumb {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 6px;
    border-radius: 8px;
    border: 1px solid var(--svt-hairline);
    background: var(--svt-card);
    box-shadow: none;
    overflow: hidden;
    transition: background 0.12s ease, border-color 0.12s ease;
}
#re-compare-icon-fixed .svt-compare-thumb-body {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
#re-compare-icon-fixed .svt-compare-thumb-meta {
    display: block;
    color: #333;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
#re-compare-icon-fixed .svt-compare-thumb-remove {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    color: var(--svt-slate-ink);
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}
#re-compare-icon-fixed .svt-compare-thumb-remove:hover,
#re-compare-icon-fixed .svt-compare-thumb-remove:focus {
    color: var(--svt-ink);
}
#re-compare-icon-fixed .svt-compare-tray-footer {
    order: 3;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
    padding: 6px 0 0;
    box-sizing: border-box;
}
#re-compare-icon-fixed.has-thumbs:not(.is-collapsed) .svt-compare-tray-footer {
    display: flex;
}
#re-compare-icon-fixed .svt-compare-tray-go {
    display: none !important;
}
#re-compare-icon-fixed .svt-compare-tray-clear {
    display: block;
    width: 100%;
    margin: 0;
    padding: 7px 8px;
    border: 1px solid var(--svt-hairline);
    border-radius: 6px;
    background: none;
    color: #555;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.3;
    text-transform: uppercase;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}
#re-compare-icon-fixed .svt-compare-tray-clear:hover,
#re-compare-icon-fixed .svt-compare-tray-clear:focus {
    color: var(--svt-ink);
}
#re-compare-icon-fixed:hover .svt-compare-thumb {
    border-color: var(--svt-hairline);
    background: var(--svt-card);
}
#re-compare-icon-fixed .svt-compare-thumb-media {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border: none;
    outline: none;
    box-shadow: none;
    border-radius: 0;
    overflow: hidden;
    background: transparent;
    padding: 0;
    box-sizing: border-box;
}
#re-compare-icon-fixed .svt-compare-thumb-media img,
#re-compare-icon-fixed .svt-compare-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: transparent;
    border: none;
    outline: none;
    box-shadow: none;
    padding: 0;
}
#re-compare-icon-fixed .svt-compare-thumb-title {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    line-height: 1.25;
    letter-spacing: 0;
    text-transform: none;
    overflow: hidden;
}
#re-compare-icon-fixed .svt-compare-thumb-brand,
#re-compare-icon-fixed .svt-compare-thumb-model {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#re-compare-icon-fixed .svt-compare-thumb-brand,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product:link,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product:visited,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product:hover,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product:focus,
#re-compare-icon-fixed .svt-compare-thumb-brand a.svt-compare-thumb-product:active {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    color: #111 !important;
}
#re-compare-icon-fixed .svt-compare-thumb-model,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product:link,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product:visited,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product:hover,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product:focus,
#re-compare-icon-fixed .svt-compare-thumb-model a.svt-compare-thumb-product:active {
    font-size: 13px;
    font-weight: 400;
    line-height: 1.25;
    color: var(--svt-slate-ink, #655F55) !important; /*b55d was #777, 4.48 on the white tray*/
}
#re-compare-icon-fixed a.svt-compare-thumb-product {
    display: inline;
    width: auto;
    margin: 0;
    padding: 0;
    text-decoration: none;
    cursor: pointer;
}
#re-compare-icon-fixed a.svt-compare-thumb-product:hover,
#re-compare-icon-fixed a.svt-compare-thumb-product:focus {
    text-decoration: underline;
}
#re-compare-icon-fixed .svt-compare-thumb-meta {
    color: #333 !important;
}
#re-compare-icon-fixed .svt-compare-thumb-score {
    color: var(--svt-brass-ink, #8F6226); /*b55d was #c4782a, 3.46 on the white tray*/
    font-weight: 600;
}
#re-compare-icon-fixed .svt-compare-thumb-price {
    color: #333;
    font-weight: 600;
}

/*
 * Tablet + mobile: pin mid-upper (not bottom). Clears sticky header (~100–160px).
 * Desktop (≥1025px) keeps base top: 160px / bottom: auto right-edge rail.
 * JS pin only forces right/left/position — vertical comes from CSS.
 */
@media (max-width: 1024px) {
    #re-compare-icon-fixed {
        top: 140px !important;
        bottom: auto !important;
        right: 0 !important;
        left: auto !important;
        transform: none !important;
        translate: none !important;
    }
    html body #re-compare-icon-fixed.is-collapsed {
        top: 140px !important;
    }
}

/*
 * Desktop (≥769): slim tray open by default; collapse to a thin vertical tab.
 * Mobile (≤768) is a separate block below — do not restyle it here.
 */
@media (min-width: 769px) {
    html body #re-compare-icon-fixed:not(.is-collapsed) {
        cursor: default !important;
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-fixed-thumbs,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-body,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-title,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-brand,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-model,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-meta,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-media,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-tray-footer {
        cursor: default !important;
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .re-compare-icon-toggle,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-collapse,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-tray-clear,
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-thumb-remove,
    html body #re-compare-icon-fixed:not(.is-collapsed) a.svt-compare-thumb-product {
        cursor: pointer !important;
    }
    html body #re-compare-icon-fixed:not(.has-thumbs),
    html body #re-compare-icon-fixed.rhhidden {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    #re-compare-icon-fixed .svt-compare-collapse {
        order: 3;
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        margin: 0 0 0 2px;
        padding: 0;
        border: none;
        border-radius: 4px;
        background: transparent;
        color: var(--svt-paper);
        cursor: pointer;
        appearance: none;
        -webkit-appearance: none;
    }
    #re-compare-icon-fixed .svt-compare-collapse span {
        display: block;
        width: 7px;
        height: 7px;
        box-sizing: border-box;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(-45deg);
        margin-left: -2px;
    }
    #re-compare-icon-fixed .svt-compare-collapse:hover,
    #re-compare-icon-fixed .svt-compare-collapse:focus {
        background: color-mix(in srgb, var(--svt-paper) 12%, transparent);
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .re-compare-icon-toggle {
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 0;
        padding: 11px 13px !important;
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .re-compare-icon-toggle::after {
        flex: 0 0 auto;
        margin: 0;
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .re-compare-notice {
        margin: 0 auto 0 10px !important;
    }
    html body #re-compare-icon-fixed:not(.is-collapsed) .svt-compare-collapse {
        margin: 0 !important;
    }
    html body #re-compare-icon-fixed.is-collapsed {
        top: 160px !important;
        bottom: auto !important;
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
        background: transparent !important;
        border: none !important;
        border-right: none !important;
        border-radius: 12px 0 0 12px !important;
        box-shadow: none !important;
        overflow: visible !important;
    }
    html body #re-compare-icon-fixed.is-collapsed:hover {
        background: transparent !important;
        box-shadow: none !important;
    }
    html body #re-compare-icon-fixed.is-collapsed::before {
        content: none !important;
        display: none !important;
    }
    html body #re-compare-icon-fixed.is-collapsed > *:not(.re-compare-icon-toggle) {
        display: none !important;
    }
    html body #re-compare-icon-fixed.is-collapsed .svt-compare-fixed-thumbs,
    html body #re-compare-icon-fixed.is-collapsed.has-thumbs .svt-compare-fixed-thumbs,
    html body #re-compare-icon-fixed.is-collapsed .svt-compare-tray-footer,
    html body #re-compare-icon-fixed.is-collapsed.has-thumbs .svt-compare-tray-footer {
        display: none !important;
    }
    html body #re-compare-bar,
    html body #re-compare-bar.active,
    html body #re-compare-bar.rh-sslide-panel {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: none !important;
    }
    html body #re-compare-icon-fixed.is-collapsed .re-compare-icon-toggle {
        writing-mode: vertical-rl;
        text-orientation: mixed;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto;
        padding: 16px 9px !important;
        border-radius: 12px 0 0 12px;
        gap: 10px;
        box-shadow: none;
    }
    html body #re-compare-icon-fixed.is-collapsed .re-compare-icon-toggle::after {
        content: "VERSUS";
        flex: 0 0 auto;
        font-size: 13px;
        letter-spacing: 0.14em;
    }
    html body #re-compare-icon-fixed.is-collapsed .re-compare-notice {
        writing-mode: horizontal-tb;
        text-orientation: mixed;
        transform: none !important;
        min-width: 22px !important;
        height: 22px !important;
        padding: 0 6px !important;
        font-size: 12px !important;
    }
    html body #re-compare-icon-fixed.is-collapsed .svt-compare-collapse {
        display: none !important;
    }
}

/* Desktop-only: Rehub Compare items drawer stays as-is above 768. */
#svt-compare-sheet {
    display: none !important;
}

/*
 * Mobile compare tray only (max 768). Desktop slim tray is unchanged.
 * Collapsed: thin vertical COMPARE tab, mid-right / slightly above center.
 * Must clear Buy Now, price, ADDED, and the affiliate line.
 * Expanded: our bottom sheet — not the Rehub side drawer.
 */
@media (max-width: 768px) {
    html body #re-compare-bar,
    html body #re-compare-bar.active,
    html body #re-compare-bar.rh-sslide-panel {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: none !important;
    }

    html body #re-compare-icon-fixed {
        top: max(calc(env(safe-area-inset-top, 0px) + 108px), 26vh) !important;
        bottom: auto !important;
        right: env(safe-area-inset-right, 0px) !important;
        left: auto !important;
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        padding: 0 !important;
        gap: 0 !important;
        flex-direction: column !important;
        align-items: stretch !important;
        background: var(--svt-ink) !important;
        border: none !important;
        border-right: none !important;
        border-radius: 12px 0 0 12px !important;
        box-shadow: 0 8px 24px color-mix(in srgb, var(--svt-ink) 22%, transparent) !important;
        transform: none !important;
        translate: none !important;
    }
    html body.tax-product_cat #re-compare-icon-fixed,
    html body.tax-product_brand #re-compare-icon-fixed,
    html body.post-type-archive-product #re-compare-icon-fixed {
        top: max(calc(env(safe-area-inset-top, 0px) + 420px), 50vh) !important;
    }
    html body #re-compare-icon-fixed.rhhidden,
    html body #re-compare-icon-fixed:not(.has-thumbs) {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    html body #re-compare-icon-fixed:not(.rhhidden).has-thumbs {
        display: flex !important;
        visibility: visible !important;
    }
    html body.svt-compare-sheet-open #re-compare-icon-fixed,
    html body.svt-compare-sheet-open #re-compare-icon-fixed:not(.rhhidden).has-thumbs {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    html body #re-compare-icon-fixed .svt-compare-collapse,
    html body #re-compare-icon-fixed .svt-compare-tray-footer {
        display: none !important;
    }
    html body #re-compare-icon-fixed .svt-compare-fixed-thumbs,
    html body #re-compare-icon-fixed.has-thumbs .svt-compare-fixed-thumbs {
        display: none !important;
    }
    html body #re-compare-icon-fixed .re-compare-icon-toggle {
        writing-mode: vertical-rl;
        text-orientation: mixed;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px;
        width: auto;
        padding: 16px 9px !important;
        border-radius: 12px 0 0 12px;
        background: var(--svt-ink) !important;
        box-shadow: none;
    }
    html body #re-compare-icon-fixed .re-compare-icon-toggle::after {
        content: "VERSUS";
        flex: 0 0 auto;
        font-size: 13px;
        letter-spacing: 0.14em;
    }
    html body #re-compare-icon-fixed .re-compare-notice {
        writing-mode: horizontal-tb;
        text-orientation: mixed;
        transform: none !important;
        min-width: 22px !important;
        height: 22px !important;
        padding: 0 6px !important;
        font-size: 12px !important;
        background: var(--svt-added) !important;
        color: #fff !important;
    }

    html body.svt-compare-sheet-open {
        overflow: hidden;
    }

    html body #svt-compare-sheet.is-open {
        display: block !important;
        position: fixed;
        inset: 0;
        z-index: 10080;
    }
    .svt-compare-sheet-backdrop {
        position: absolute;
        inset: 0;
        background: color-mix(in srgb, var(--svt-ink) 42%, transparent);
    }
    .svt-compare-sheet-panel {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        display: flex;
        flex-direction: column;
        max-height: min(55vh, calc(100dvh - env(safe-area-inset-top, 0px) - 16px));
        overflow: hidden;
        padding: 10px 16px 0;
        padding-left: max(16px, env(safe-area-inset-left, 0px));
        padding-right: max(16px, env(safe-area-inset-right, 0px));
        box-sizing: border-box;
        background: var(--svt-card);
        border-radius: 16px 16px 0 0;
        box-shadow: 0 -8px 28px color-mix(in srgb, var(--svt-ink) 18%, transparent);
    }
    .svt-compare-sheet-handle {
        flex: 0 0 auto;
        width: 36px;
        height: 4px;
        margin: 2px auto 12px;
        border-radius: 999px;
        background: var(--svt-hairline);
        cursor: pointer;
    }
    .svt-compare-sheet-list {
        flex: 1 1 auto;
        min-height: 0;
        overflow-x: hidden;
        overflow-y: auto;
        display: flex;
        flex-direction: column;
        gap: 6px;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y;
    }
    .svt-compare-sheet-list .svt-compare-thumb {
        display: grid;
        grid-template-columns: 48px minmax(0, 1fr) 28px;
        column-gap: 10px;
        align-items: center;
        width: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 11px;
        min-height: 72px;
        border-radius: 8px;
        border: 1px solid var(--svt-hairline);
        background: var(--svt-card);
        box-shadow: none;
    }
    .svt-compare-sheet-list .svt-compare-thumb-media,
    .svt-compare-sheet-list .svt-compare-thumb-media img,
    .svt-compare-sheet-list .svt-compare-thumb img {
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        background: transparent !important;
        padding: 0 !important;
        border-radius: 0;
    }
    .svt-compare-sheet-list .svt-compare-thumb-media {
        width: 48px;
        height: 48px;
        overflow: hidden;
    }
    .svt-compare-sheet-list .svt-compare-thumb-media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .svt-compare-sheet-list .svt-compare-thumb-body {
        min-width: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 2px;
    }
    .svt-compare-sheet-list .svt-compare-thumb-title {
        min-width: 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
        line-height: 1.25;
    }
    .svt-compare-sheet-list .svt-compare-thumb-meta {
        display: block;
        color: #333;
        font-size: 14px;
        font-weight: 600;
        line-height: 1.3;
        letter-spacing: 0;
        text-transform: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        min-height: 18px;
    }
    .svt-compare-sheet-list .svt-compare-thumb-brand,
    .svt-compare-sheet-list .svt-compare-thumb-model {
        display: inline-block;
        width: auto;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .svt-compare-sheet-list .svt-compare-thumb-brand,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product:link,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product:visited,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product:hover,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product:focus,
    .svt-compare-sheet-list .svt-compare-thumb-brand a.svt-compare-thumb-product:active {
        font-size: 15px;
        font-weight: 700;
        line-height: 1.25;
        color: #111 !important;
    }
    .svt-compare-sheet-list .svt-compare-thumb-model,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product:link,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product:visited,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product:hover,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product:focus,
    .svt-compare-sheet-list .svt-compare-thumb-model a.svt-compare-thumb-product:active {
        font-size: 13px;
        font-weight: 400;
        line-height: 1.25;
        color: var(--svt-slate-ink, #655F55) !important; /*b55d was #777, 4.48*/
    }
    .svt-compare-sheet-list a.svt-compare-thumb-product {
        display: inline-block;
        width: auto;
        max-width: 100%;
        text-decoration: none;
        cursor: pointer;
    }
    .svt-compare-sheet-list a.svt-compare-thumb-product:hover,
    .svt-compare-sheet-list a.svt-compare-thumb-product:focus {
        text-decoration: underline;
    }
    .svt-compare-sheet-list .svt-compare-thumb-meta {
        color: #333 !important;
    }
    .svt-compare-sheet-list .svt-compare-thumb-score {
        color: var(--svt-brass-ink, #8F6226); /*b55d was #c4782a, 3.46*/
        font-weight: 600;
    }
    .svt-compare-sheet-list .svt-compare-thumb-price {
        color: #333;
        font-weight: 600;
    }
    .svt-compare-sheet-remove {
        justify-self: end;
        align-self: center;
        width: 28px;
        height: 28px;
        margin: 0;
        padding: 0;
        border: none;
        background: transparent;
        color: #555;
        font-size: 22px;
        line-height: 1;
        cursor: pointer;
        appearance: none;
    }
    .svt-compare-sheet-actions {
        flex: 0 0 auto;
        flex-shrink: 0;
        display: flex;
        flex-direction: row;
        align-items: stretch;
        gap: 8px;
        margin-top: 0;
        padding-top: 12px;
        padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
        background: var(--svt-card);
    }
    .svt-compare-sheet-go,
    .svt-compare-sheet-clear {
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        margin: 0;
        font-family: inherit;
        text-transform: uppercase;
        text-decoration: none !important;
        cursor: pointer;
        appearance: none;
        -webkit-appearance: none;
    }
    .svt-compare-sheet-go {
        flex: 2 1 0;
        width: auto;
        min-width: 0;
        padding: 15px 12px;
        border: none;
        border-radius: 8px;
        background: var(--svt-added);
        color: #fff !important;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 0.08em;
        line-height: 1;
    }
    .svt-compare-sheet-go:hover,
    .svt-compare-sheet-go:focus {
        background: var(--svt-added-border);
        color: #fff !important;
    }
    .svt-compare-sheet-go.is-disabled {
        opacity: 0.45;
        pointer-events: none;
    }
    .svt-compare-sheet-clear {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        padding: 15px 8px;
        border: 1px solid var(--svt-hairline);
        border-radius: 8px;
        background: none;
        color: #555;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 0.06em;
        line-height: 1;
    }
    .svt-compare-sheet-clear:hover,
    .svt-compare-sheet-clear:focus {
        color: var(--svt-ink);
        border-color: var(--svt-slate);
    }
}

/* Header compare control (when shown in nav) */
.rh-comparemenu-link .re-compare-icon-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    padding: 6px 10px;
    border: 1.5px solid var(--svt-hairline);
    border-radius: 4px;
    background: var(--svt-card);
    color: var(--svt-body) !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.rh-comparemenu-link .re-compare-icon-toggle:hover {
    border-color: var(--svt-slate);
    background: var(--svt-card);
    color: var(--svt-body) !important;
}
.rh-comparemenu-link .re-compare-icon-toggle:before {
    content: none !important;
    display: none !important;
}
.rh-comparemenu-link .re-compare-icon-toggle::after {
    content: "Versus";
    font-size: 11px;
}
.rh-comparemenu-link .re-compare-notice {
    position: static !important;
    top: auto !important;
    left: auto !important;
    min-width: 18px !important;
    height: 18px !important;
    line-height: 18px !important;
    background: var(--svt-brass) !important;
    transform: none !important;
}

/*
 * Side panel primary COMPARE CTA — hairline idle, shaded Added green when the
 * tray has products (beats offer-btn red).
 *
 * Why it was red: rehub-theme/inc/customization.php (wp_head) paints
 * .wpsm-button.rehub_main_btn with rehub_btnoffer_color / REHUB_BUTTON_COLOR
 * (#de1414 by default) as `background: none $color !important` + red-tinted
 * box-shadow (smooth-btn). That head <style> loads AFTER style.css, so equal
 * specificity loses. Mirrored + inlined late in functions.php for CDN immunity.
 * Remove (X) icons stay theme red (.re-compare-close) — not targeted here.
 * Product-card Compare chips (.svt-footer-compare) are unchanged.
 */
#re-compare-bar .re-compare-destin,
#re-compare-bar .re-compare-destin.wpsm-button,
#re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar a.re-compare-destin,
#re-compare-bar a.re-compare-destin.wpsm-button,
#re-compare-bar a.re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar-tabs .re-compare-destin,
#re-compare-bar-tabs .re-compare-destin.wpsm-button,
#re-compare-bar-tabs .re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar .rehub_main_btn.re-compare-destin,
#re-compare-bar-tabs .rehub_main_btn.re-compare-destin,
.re-compare-destin.wpsm-button,
.re-compare-destin.wpsm-button.rehub_main_btn,
a.re-compare-destin.wpsm-button,
a.re-compare-destin.wpsm-button.rehub_main_btn {
    background: none var(--svt-card) !important;
    background-color: var(--svt-card) !important;
    background-image: none !important;
    border: 1.5px solid var(--svt-hairline) !important;
    border-color: var(--svt-hairline) !important;
    border-radius: 4px !important;
    color: var(--svt-body) !important;
    fill: var(--svt-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    text-decoration: none !important;
    opacity: 1 !important;
    outline: 0 !important;
    box-shadow: none !important;
}
#re-compare-bar .re-compare-destin:hover,
#re-compare-bar .re-compare-destin:focus,
#re-compare-bar .re-compare-destin:active,
#re-compare-bar .re-compare-destin.wpsm-button:hover,
#re-compare-bar .re-compare-destin.wpsm-button:focus,
#re-compare-bar .re-compare-destin.wpsm-button:active,
#re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn:hover,
#re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn:focus,
#re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn:active,
#re-compare-bar a.re-compare-destin:hover,
#re-compare-bar a.re-compare-destin:focus,
#re-compare-bar a.re-compare-destin:active,
#re-compare-bar a.re-compare-destin.wpsm-button:hover,
#re-compare-bar a.re-compare-destin.wpsm-button.rehub_main_btn:hover,
#re-compare-bar-tabs .re-compare-destin:hover,
#re-compare-bar-tabs .re-compare-destin.wpsm-button:hover,
#re-compare-bar-tabs .re-compare-destin.wpsm-button.rehub_main_btn:hover,
#re-compare-bar .rehub_main_btn.re-compare-destin:hover,
.re-compare-destin.wpsm-button:hover,
.re-compare-destin.wpsm-button:focus,
.re-compare-destin.wpsm-button:active,
.re-compare-destin.wpsm-button.rehub_main_btn:hover,
.re-compare-destin.wpsm-button.rehub_main_btn:focus,
.re-compare-destin.wpsm-button.rehub_main_btn:active,
a.re-compare-destin.wpsm-button:hover,
a.re-compare-destin.wpsm-button.rehub_main_btn:hover {
    background: none var(--svt-card) !important;
    background-color: var(--svt-card) !important;
    background-image: none !important;
    border-color: var(--svt-slate) !important;
    color: var(--svt-body) !important;
    fill: var(--svt-body) !important;
    box-shadow: none !important;
}
#re-compare-bar .re-compare-destin:visited,
#re-compare-bar .re-compare-destin.wpsm-button:visited,
#re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn:visited,
#re-compare-bar a.re-compare-destin:visited,
.re-compare-destin.wpsm-button:visited,
.re-compare-destin.wpsm-button.rehub_main_btn:visited,
a.re-compare-destin.wpsm-button:visited {
    color: var(--svt-body) !important;
    background: none var(--svt-card) !important;
    background-color: var(--svt-card) !important;
}
/*
 * Shaded Added green when the tray has products (same tokens as .comparing chips).
 * Hooks: #re-compare-bar.has-thumbs (JS), #re-compare-icon-fixed.has-thumbs,
 * .re-compare-item in the wrap, #re-compare-bar.active with wrap children.
 */
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin.wpsm-button,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar a.re-compare-destin,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar-tabs .re-compare-destin,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar-tabs .re-compare-destin.wpsm-button,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar-tabs .re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar.has-thumbs .re-compare-destin,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar.has-thumbs a.re-compare-destin,
#re-compare-bar.has-thumbs .rehub_main_btn.re-compare-destin,
#re-compare-bar:has(.re-compare-item) .re-compare-destin,
#re-compare-bar:has(.re-compare-item) .re-compare-destin.wpsm-button,
#re-compare-bar:has(.re-compare-item) .re-compare-destin.wpsm-button.rehub_main_btn,
#re-compare-bar:has(.re-compare-wrap > *) .re-compare-destin,
#re-compare-bar.active:has(.re-compare-item) .re-compare-destin,
#re-compare-bar.active:has(.re-compare-wrap > *) .re-compare-destin.wpsm-button.rehub_main_btn {
    background: none var(--svt-added) !important;
    background-color: var(--svt-added) !important;
    background-image: none !important;
    border: 1.5px solid var(--svt-added) !important;
    border-color: var(--svt-added) !important;
    color: #fff !important;
    fill: #fff !important;
    box-shadow: none !important;
}
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin:hover,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin:focus,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin:active,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin.wpsm-button:hover,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin.wpsm-button.rehub_main_btn:hover,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar-tabs .re-compare-destin:hover,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar-tabs .re-compare-destin.wpsm-button:hover,
#re-compare-bar.has-thumbs .re-compare-destin:hover,
#re-compare-bar.has-thumbs .re-compare-destin:focus,
#re-compare-bar.has-thumbs .re-compare-destin:active,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button:hover,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button:focus,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button:active,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button.rehub_main_btn:hover,
#re-compare-bar.has-thumbs a.re-compare-destin:hover,
#re-compare-bar:has(.re-compare-item) .re-compare-destin:hover,
#re-compare-bar:has(.re-compare-item) .re-compare-destin.wpsm-button:hover,
#re-compare-bar:has(.re-compare-item) .re-compare-destin.wpsm-button.rehub_main_btn:hover,
#re-compare-bar.active:has(.re-compare-wrap > *) .re-compare-destin:hover {
    background: none var(--svt-added) !important;
    background-color: var(--svt-added) !important;
    background-image: none !important;
    border-color: var(--svt-added) !important;
    color: #fff !important;
    fill: #fff !important;
    box-shadow: none !important;
}
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin:visited,
#re-compare-bar.has-thumbs .re-compare-destin:visited,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button:visited,
#re-compare-bar.has-thumbs .re-compare-destin.wpsm-button.rehub_main_btn:visited,
#re-compare-bar:has(.re-compare-item) .re-compare-destin:visited {
    color: #fff !important;
    fill: #fff !important;
    background: none var(--svt-added) !important;
    background-color: var(--svt-added) !important;
}
#re-compare-bar.has-thumbs .re-compare-destin svg,
#re-compare-bar.has-thumbs .re-compare-destin .rhicon,
#re-compare-bar.has-thumbs .re-compare-destin i,
#re-compare-bar.has-thumbs .re-compare-destin::before,
#re-compare-bar.has-thumbs .re-compare-destin::after,
#re-compare-bar:has(.re-compare-item) .re-compare-destin svg,
#re-compare-bar:has(.re-compare-item) .re-compare-destin .rhicon,
#re-compare-bar:has(.re-compare-item) .re-compare-destin::before,
#re-compare-bar:has(.re-compare-item) .re-compare-destin::after,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin svg,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin .rhicon,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin i,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin::before,
body:has(#re-compare-icon-fixed.has-thumbs) #re-compare-bar .re-compare-destin::after {
    color: #fff !important;
    fill: #fff !important;
}
/* Panel “Compare items” title — not red theme accent */
#re-compare-bar-heading h5,
#re-compare-bar-heading h5.rehub-main-color,
#re-compare-bar-heading .rehub-main-color {
    font-weight: 700 !important;
    color: var(--svt-ink) !important;
}

/* Panel rows: brand + model, same as catalog / tray. Price uses theme green. */
#re-compare-bar .re-compare-item {
    min-height: 78px;
}
#re-compare-bar .re-compare-img,
#re-compare-bar .re-compare-img a,
#re-compare-bar .re-compare-img img {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}
#re-compare-bar .re-compare-title {
    display: block !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25 !important;
}
#re-compare-bar .re-compare-title a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    min-width: 0;
    color: var(--svt-ink) !important;
    text-decoration: none;
}
#re-compare-bar .svt-compare-panel-brand,
#re-compare-bar .svt-compare-panel-model {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
    line-height: 1.25;
}
#re-compare-bar .svt-compare-panel-brand {
    font-weight: 700;
    color: var(--svt-ink) !important;
}
#re-compare-bar .svt-compare-panel-model {
    font-weight: 400;
    font-size: 0.85em;
    color: var(--svt-ink) !important;
}
#re-compare-bar .re-compare-item .greencolor,
#re-compare-bar .re-compare-item .re-compare-price,
#re-compare-bar .re-compare-item .re-compare-price .amount,
#re-compare-bar .re-compare-item .re-compare-price .woocommerce-Price-amount,
#re-compare-bar .re-compare-item .wooprice,
#re-compare-bar .re-compare-item .wooprice .amount,
#re-compare-bar .re-compare-item span.price,
#re-compare-bar .re-compare-item span.price .amount {
    color: var(--svt-pro-ink, #556F50) !important; /*b53*/
    font-weight: 600 !important;
}

/*
 * CLEAR ALL — same row as COMPARE, quieter hairline/slate (never Buy Now orange).
 * Wrapper is a span so #re-compare-bar-tabs > div lightTabs stays intact.
 */
#re-compare-bar-tabs > .svt-compare-panel-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    margin: 10px 20px 20px !important;
    width: auto !important;
    max-width: calc(100% - 40px);
}
#re-compare-bar-tabs > .svt-compare-panel-actions .re-compare-destin,
#re-compare-bar-tabs > .svt-compare-panel-actions .re-compare-destin.wpsm-button,
#re-compare-bar.active .svt-compare-panel-actions .re-compare-destin.wpsm-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    min-width: 0 !important;
}
#re-compare-bar-tabs .svt-compare-clear-all {
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin: 0;
    padding: 15px 16px;
    border: 1.5px solid var(--svt-hairline) !important;
    border-radius: 4px !important;
    background: var(--svt-card) !important;
    color: var(--svt-slate-ink) !important;
    font-family: inherit;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em;
    line-height: 22px;
    text-transform: uppercase;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    opacity: 1 !important;
    outline: 0 !important;
    box-shadow: none !important;
}
#re-compare-bar-tabs .svt-compare-clear-all:hover,
#re-compare-bar-tabs .svt-compare-clear-all:focus {
    border-color: var(--svt-slate) !important;
    color: var(--svt-body) !important;
    background: var(--svt-card) !important;
}
#re-compare-bar-tabs .svt-compare-clear-all:active,
#re-compare-bar-tabs .svt-compare-clear-all.is-busy {
    opacity: 0.7 !important;
}

/*
 * SVT color map — remaining site chrome (wordmark, body, breadcrumbs, widgets).
 * Tokens live in :root above. Do not restyle .svt-score-tier-badge (gold chrome).
 */
body {
    color: var(--svt-body);
}
.product_meta,
.svt-bar-summary,
.svt-score-card-summary,
.svt-brand-count {
    color: var(--svt-slate-ink);
}
.svt-loop-score-label,
.svt-product-score-caption,
.svt-score-caption,
.svt-score-legend__label {
    color: var(--svt-ink);
}

/* Site logo: white wordmark as a header mark, not edge-to-edge in the bar.

   THE BOX IS EXPLICIT BECAUSE `width:auto;height:auto` RESERVES NOTHING, and
   that cost 0.168 of CLS on every first visit until 2026-09-21. A browser
   uses an img's width/height attributes to reserve space only when one
   dimension is definite in CSS; with both auto and no intrinsic size yet the
   box is zero, so the header rendered 230px narrower and 8px shorter until
   the PNG arrived, and the entire page below it moved. max-width and
   max-height are caps, not sizes, and reserve nothing.

   BOTH DIMENSIONS ARE SET RATHER THAN JUST THE HEIGHT, because the markup's
   attributes are wrong: the mobile logo is tagged 160x50 (3.2:1) and the file
   is 360x72 (5:1). A definite height alone would have reserved 115px and
   jumped to 180px -- the same bug, quieter.

   The values are what these already render at, measured on Live at 1350px:
   230x46 and 180x36. object-fit keeps the mark undistorted if the artwork is
   ever replaced at a different ratio. */
#main_header .logo_image img,
#main_header a.logo_image img {
    width: 230px;
    height: 46px;
    object-fit: contain;
}

/* Left on auto deliberately: the sticky header appears on scroll rather than
   at load, so it is not a load-time shift, and its rendered size has never
   been measured. */
a.logo_image_insticky img {
    width: auto;
    height: auto;
    max-width: 240px;
    max-height: 46px;
}

a.logo_image_mobile img,
#dl-menu a.logo_image_mobile img,
#mobpanelimg {
    width: 180px !important;
    height: 36px !important;
    object-fit: contain;
}

/* Wordmark: paper on ink header; brass vs-dot when marked up */
#main_header.dark_style .textlogo,
#main_header.dark_style .textlogo a,
#main_header .logo .textlogo,
#main_header .logo .textlogo a {
    color: var(--svt-paper) !important;
}
#main_header .svt-vs-dot,
#main_header .textlogo .svt-vs-dot,
.logo .svt-vs-dot {
    color: var(--svt-brass) !important;
}

nav.woocommerce-breadcrumb,
.woocommerce-breadcrumb {
    color: var(--svt-body) !important;
    border-color: var(--svt-hairline) !important;
}
nav.woocommerce-breadcrumb a,
.woocommerce-breadcrumb a {
    color: var(--svt-click-ink) !important;
    border-color: var(--svt-hairline) !important;
}
nav.woocommerce-breadcrumb a:hover,
.woocommerce-breadcrumb a:hover {
    color: var(--svt-click-deep) !important;
    text-decoration: underline;
}

/* Sidebar + archive chrome: cream through body. Dark .title bars stay. */
.sidebar .widget,
.svt-brand-archive-sidebar .widget,
.sidebar .widget.lightbluebg,
.svt-brand-archive-sidebar .widget.lightbluebg,
#rh_latest_compare-1,
#rehub_top_offers-2,
.widget.rh_latest_compare_widget,
.rh_latest_compare_widget.top_offers,
.sidebar .widget.top_offers,
.widget.top_offers,
.svt-product-categories-box,
.svt-shop-brands,
.svt-filter-acc,
.svt-dynamic-product-categories,
.svt-attribute-filters-box,
.widget.svt-dynamic-price-filter,
.svt-dynamic-price-filter,
.sidebar .widget_price_filter,
.svt-brand-archive-logo,
.svt-brand-archive-logo.is-linked,
.svt-archive-footer-bar .svt-score-legend,
.svt-archive-footer-bar .svt-score-legend .svt-score-legend__items,
.svt-score-legend,
.svt-score-legend__items {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}
@media (min-width: 769px) {
    .svt-shop-brands__title,
    .svt-filter-acc__sum,
    .svt-score-legend-slot--sidebar .svt-score-legend__banner {
        background: var(--svt-hairline) !important;
        background-color: var(--svt-hairline) !important;
        background-image: none !important;
        font-size: 18px;
        font-weight: 700;
        text-align: left;
        justify-content: flex-start;
    }
    form.woocommerce-ordering .nice-select.orderby,
    form.woocommerce-ordering .nice-select.orderby:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering .nice-select.orderby,
    .woocommerce .woocommerce-ordering .nice-select.orderby:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering .nice-select,
    .woocommerce .woocommerce-ordering .nice-select:is(:hover, :focus, :focus-visible, :active, .open),
    .woocommerce .woocommerce-ordering select.orderby,
    .woocommerce .woocommerce-ordering select.orderby:is(:hover, :focus, :focus-visible, :active) {
        background: var(--svt-surface-control, #FFFFFF) !important;
        background-color: var(--svt-surface-control, #FFFFFF) !important;
        background-image: none !important;
        border: 1px solid #D6D1C7 !important;
        border-color: #D6D1C7 !important;
        box-shadow: none !important;
        outline: none;
        -webkit-tap-highlight-color: transparent;
    }
}
.svt-brand-archive-logo,
.svt-brand-archive-logo.is-linked {
    border: none !important;
}
@media (max-width: 768px) {
    form.woocommerce-ordering .nice-select.orderby,
    .woocommerce .woocommerce-ordering .nice-select.orderby,
    .woocommerce .woocommerce-ordering .nice-select,
    .woocommerce .woocommerce-ordering select.orderby {
        background: var(--svt-surface-control, #FFFFFF) !important;
        background-color: var(--svt-surface-control, #FFFFFF) !important;
        background-image: none !important;
        border: 1px solid #D6D1C7 !important;
        border-color: #D6D1C7 !important;
    }
}
form.woocommerce-ordering .nice-select.orderby .list,
.woocommerce .woocommerce-ordering .nice-select.orderby .list,
.woocommerce .woocommerce-ordering .nice-select .list {
    background: var(--svt-surface-control, #FFFFFF) !important;
    background-color: var(--svt-surface-control, #FFFFFF) !important;
    border: 1px solid #D6D1C7 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
}
form.woocommerce-ordering .nice-select.orderby .option,
.woocommerce .woocommerce-ordering .nice-select.orderby .option,
.woocommerce .woocommerce-ordering .nice-select .option {
    background: transparent !important;
    background-color: transparent !important;
    white-space: normal !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}
form.woocommerce-ordering .nice-select.orderby .option.selected,
form.woocommerce-ordering .nice-select.orderby .option:hover,
form.woocommerce-ordering .nice-select.orderby .option.focus,
.woocommerce .woocommerce-ordering .nice-select.orderby .option.selected,
.woocommerce .woocommerce-ordering .nice-select.orderby .option:hover,
.woocommerce .woocommerce-ordering .nice-select.orderby .option.focus,
.woocommerce .woocommerce-ordering .nice-select .option.selected,
.woocommerce .woocommerce-ordering .nice-select .option:hover,
.woocommerce .woocommerce-ordering .nice-select .option.focus {
    color: var(--svt-click-ink) !important;
    background: var(--svt-surface-control-on, #F2EEE6) !important;
    background-color: var(--svt-surface-control-on, #F2EEE6) !important;
}
#rh_latest_compare-1 .widget-inner,
#rh_latest_compare-1 .rh-c-compare,
#rh_latest_compare-1 .rh_deal_block,
#rh_latest_compare-1 .tabs,
#rh_latest_compare-1 .tabs-item,
#rh_latest_compare-1 .color_sidebar,
#rehub_top_offers-2 .widget-inner,
#rehub_top_offers-2 .rh-c-compare,
#rehub_top_offers-2 .rh_deal_block,
#rehub_top_offers-2 .tabs,
#rehub_top_offers-2 .tabs-item,
#rehub_top_offers-2 .color_sidebar,
.widget.rh_latest_compare_widget .widget-inner,
.widget.rh_latest_compare_widget .rh-c-compare,
.widget.rh_latest_compare_widget .rh_deal_block,
.widget.rh_latest_compare_widget .tabs,
.widget.rh_latest_compare_widget .tabs-item,
.widget.rh_latest_compare_widget .color_sidebar,
.sidebar .widget.top_offers .widget-inner,
.sidebar .widget.top_offers .rh-c-compare,
.sidebar .widget.top_offers .rh_deal_block,
.sidebar .widget.top_offers .tabs,
.sidebar .widget.top_offers .tabs-item,
.sidebar .widget.top_offers .color_sidebar,
.widget.top_offers .widget-inner,
.widget.top_offers .rh-c-compare,
.widget.top_offers .rh_deal_block,
.widget.top_offers .tabs,
.widget.top_offers .tabs-item,
.widget.top_offers .color_sidebar,
.svt-brand-archive-sidebar .widget .widget-inner,
.svt-brand-archive-sidebar .widget .lightbluebg:not(.title),
.sidebar .widget .lightbluebg:not(.title),
.svt-product-categories-box .widget-inner,
.svt-product-categories-box .svt-product-category-list,
.svt-attribute-filters-box .widget-inner,
.svt-attribute-filters-box .svt-dynamic-layered-nav,
.widget.svt-dynamic-price-filter .price_slider_wrapper,
.svt-dynamic-price-filter .price_slider_wrapper,
.sidebar .widget_price_filter .price_slider_wrapper,
.widget.svt-dynamic-price-filter .price_slider_amount,
.svt-dynamic-price-filter .price_slider_amount,
.sidebar .widget_price_filter .price_slider_amount,
.widget_price_filter .price_slider_amount {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}
.widget.svt-dynamic-price-filter .price_slider_amount .price_label,
.svt-dynamic-price-filter .price_slider_amount .price_label,
.svt-dynamic-price-filter .price_label,
.sidebar .widget_price_filter .price_label,
.widget_price_filter .price_label {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
}
.widget.svt-dynamic-price-filter .price_slider .ui-slider-handle,
.svt-dynamic-price-filter .price_slider .ui-slider-handle,
.sidebar .widget_price_filter .price_slider .ui-slider-handle {
    background: var(--svt-card) !important;
    background-color: var(--svt-card) !important;
}

.widget.top_offers .title,
.widget.cegg_widget_products .title {
    color: var(--svt-ink) !important;
}
.widget.top_offers a,
.widget.cegg_widget_products a {
    color: var(--svt-click-ink) !important;
}
.widget.top_offers .price,
.widget.top_offers .amount,
.widget.top_offers .rehub-main-color,
.widget.cegg_widget_products .price,
.widget.cegg_widget_products .amount,
.widget.cegg_widget_products .rehub-main-color,
.price .redbrightcolor,
.redbrightcolor .amount {
    color: var(--svt-ink) !important;
}

.svt-pros-cons .wpsm_pros .title_pros,
.svt-pros-cons .wpsm_pros ul li::before,
.wpsm_pros .title_pros,
.wpsm_pros ul li::before {
    color: var(--svt-pro-ink, #556F50) !important; /*b53*/
}
.svt-pros-cons .wpsm_cons .title_cons,
.svt-pros-cons .wpsm_cons ul li::before,
.wpsm_cons .title_cons,
.wpsm_cons ul li::before {
    color: var(--svt-con-ink, #98564F) !important; /*b53*/
}

.table_view_charts .price-in-compare-flip a.btn_offer_block,
.table_view_charts .price-in-compare-flip a.btn-woo-compare-chart,
.table_view_charts .price-in-compare-flip a.woo_loop_btn {
    background: var(--svt-cta) !important;
    background-color: var(--svt-cta) !important;
    border-color: var(--svt-cta) !important;
    color: var(--svt-cta-text) !important;
    text-shadow: none !important;
}
.table_view_charts .price-in-compare-flip a.btn_offer_block:hover,
.table_view_charts .price-in-compare-flip a.btn-woo-compare-chart:hover,
.table_view_charts .price-in-compare-flip a.woo_loop_btn:hover {
    background: var(--svt-cta-deep) !important;
    border-color: var(--svt-cta-deep) !important;
    color: var(--svt-cta-text) !important;
}



/*
 * Page cream. Parent Rehub paints the body white on phones:
 *   @media (max-width: 479px) {
 *     body:not(.dark_body):not(.page-template-template-systempages){background:#fff!important}
 *   }
 * That (0,2,1) selector beat html/body and html body[class]. Match it and win.
 * Inner wrappers stay transparent so cream shows; grid product cards are transparent too.
 * Header is not listed — keep it dark.
 */
html,
html body,
html body:not(.dark_body):not(.page-template-template-systempages) {
    background: var(--svt-page) !important;
    background-color: var(--svt-page) !important;
}
.rh-outer-wrap,
.rh-boxed-container .rh-outer-wrap {
    background: var(--svt-page) !important;
}
body .rh-container,
body .main-side,
body .rh-content-wrap,
body article.post,
body .rh-post-wrapper,
body:not(.noinnerpadding) .rh-post-wrapper,
body .content,
body #content {
    background: transparent !important;
}
@media (max-width: 767px) {
    html,
    html body,
    html body:not(.dark_body):not(.page-template-template-systempages) {
        background: var(--svt-page) !important;
        background-color: var(--svt-page) !important;
    }
    .rh-outer-wrap,
    .rh-boxed-container .rh-outer-wrap {
        background: var(--svt-page) !important;
    }
    body .rh-container,
    body .main-side,
    body .rh-content-wrap,
    body article.post,
    body .rh-post-wrapper,
    body .content,
    body #content {
        background: transparent !important;
    }
}

/* Mobile filter drawer + hamburger menu: cream, not Rehub #fff. */
#rh_woo_mbl_sidebar .sidebar,
#slide-menu-mobile ul.off-canvas,
#slide-menu-mobile ul ul.sub-menu {
    background: var(--svt-page) !important;
    background-color: var(--svt-page) !important;
}

.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image {
    background: transparent;
}

/* Product stack section headers: cream through, hairline under (all sections). */
.svt-product-stack header.svt-stack-head,
.svt-product-stack .svt-stack-head {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    border-bottom: 1px solid var(--svt-hairline) !important;
}

/* Reviews tab: heading bars + Write a review CTA use click, not Rehub red. */
#tab-reviews h2.rh-heading-icon.woocommerce-Reviews-title::before,
.svt-product-stack .rh-heading-icon::before {
    color: var(--svt-click-ink) !important;
}
#tab-reviews .woo-rev-part .wpsm-button,
#tab-reviews .woo-rev-part .wpsm-button.medium,
#tab-reviews .woo-rev-part .wpsm-button.rehub_main_btn,
#tab-reviews .woo-rev-part span.wpsm-button,
#tab-reviews .woo-rev-part a.wpsm-button,
#tab-reviews .woo-rev-part .rev-btn {
    background: var(--svt-click) !important;
    background-color: var(--svt-click) !important;
    background-image: none !important;
    border-color: var(--svt-click) !important;
    color: #fff !important;
    box-shadow: none !important;
}
#tab-reviews .woo-rev-part .wpsm-button:hover,
#tab-reviews .woo-rev-part .wpsm-button:focus,
#tab-reviews .woo-rev-part .wpsm-button:active,
#tab-reviews .woo-rev-part .wpsm-button.rehub_main_btn:hover,
#tab-reviews .woo-rev-part .wpsm-button.rehub_main_btn:focus,
#tab-reviews .woo-rev-part .wpsm-button.rehub_main_btn:active,
#tab-reviews .woo-rev-part span.wpsm-button:hover,
#tab-reviews .woo-rev-part a.wpsm-button:hover,
#tab-reviews .woo-rev-part .rev-btn:hover {
    background: var(--svt-click-deep) !important;
    background-color: var(--svt-click-deep) !important;
    border-color: var(--svt-click-deep) !important;
    color: #fff !important;
    transform: none !important;
}

/* Unscored ring: same 50px geometry, no brass arc, stacked NOT SCORED in the inset. */
.svt-loop-scores .radial-progress.is-unscored .circle .mask .fill{background:transparent!important}
.svt-loop-scores .radial-progress.is-unscored{background-color:var(--svt-hairline)}
.svt-loop-scores .radial-progress.is-unscored .inset{box-shadow:none}
.percentage.svt-not-scored{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;line-height:1.05;font-size:9px;font-weight:700;letter-spacing:.02em;color:var(--svt-slate-ink);text-transform:uppercase}
.svt-score-caption--reason{font-size:11px;line-height:1.25;color:var(--svt-slate-ink);max-width:140px;display:block}

.svt-loop-scores .radial-progress.is-unscored .inset{display:flex;align-items:center;justify-content:center;padding:0}
.percentage.svt-not-scored{font-size:8px;line-height:1;gap:1px;padding:0;margin:0;width:100%;height:auto;overflow:visible}
.percentage.svt-not-scored span{display:block;white-space:nowrap}

.percentage.svt-not-scored{font-size:20px;font-weight:400;color:var(--svt-slate-ink);line-height:40px;letter-spacing:0}

/* FTC affiliate disclosure — quiet, no box, no icon. */
.svt-disclosure {
    font-size: 13px;
    line-height: 1.5;
    color: var(--svt-body);
    margin: 12px 0 0;
}
.svt-disclosure a {
    color: var(--svt-click-ink);
    text-decoration: underline !important; /*b55*/
}
/* Shop/catalog: title → disclosure → result count share --svt-archive-head-gap. */
.rh_woo_main_archive h1.arc-main-title {
    margin-bottom: var(--svt-archive-head-gap);
}
.woocommerce-products-header + .svt-disclosure,
body:not(.single-product) .svt-disclosure:first-child,
article p.svt-disclosure,
.post p.svt-disclosure {
    margin: 0 0 var(--svt-archive-head-gap);
}
/*
 * Product summary air under COMPARE / BUY NOW.
 * Rehub css/woosingle.css `.woocommerce div.product div.summary p { margin: 0 }`
 * is 0,3,3 and zeros every summary <p>, so a 2-class margin never shows.
 */
.woocommerce div.product div.summary p.svt-disclosure,
.woocommerce div.product .entry-summary p.svt-disclosure {
    margin: 12px 0;
}
.woocommerce div.product div.summary p.svt-disclosure + .mb20,
.woocommerce div.product .entry-summary p.svt-disclosure + .mb20,
.woocommerce div.product div.summary p.svt-disclosure + .product_meta,
.woocommerce div.product .entry-summary p.svt-disclosure + .product_meta {
    margin-top: 0 !important;
}

/* Site footer: pack About / Site / Legal instead of three stretched thirds. */
@media (min-width: 768px) {
    .footer-bottom .rh-container > .rh-flex-eq-height.col_wrap_three {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 64px;
        margin: 0;
    }
    .footer-bottom .col_wrap_three .col_item,
    .footer-bottom .footer_widget.col_item {
        float: none;
        width: auto !important;
        margin: 0 !important;
        flex: 0 1 auto;
    }
    .footer-bottom .footer_widget.col_item:first-child {
        flex: 0 1 28em;
        max-width: 28em;
    }
    .footer-bottom .footer_widget.col_item:not(:first-child) {
        min-width: 9em;
    }
}
.footer-bottom .footer_widget .widget .title,
.footer-bottom .footer_widget .widget h2 {
    margin: 0 0 12px;
}
.footer-bottom .footer_widget p {
    margin-bottom: 12px;
}
.footer-bottom .footer_widget .widget_nav_menu ul li {
    margin-bottom: 8px;
}
@media (max-width: 767px) {
    .footer-bottom .rh-container {
        padding-top: 4px;
        padding-bottom: 8px;
    }
    .footer-bottom .col_wrap_three {
        margin: 0;
    }
    .footer-bottom .footer_widget.col_item,
    .footer-bottom .col_wrap_three .col_item {
        width: 100% !important;
        padding-top: 14px !important;
        padding-bottom: 0 !important;
        margin: 0 !important;
    }
    .footer-bottom .footer_widget.col_item:first-child {
        padding-top: 10px !important;
    }
    .footer-bottom .footer_widget.col_item:last-child {
        padding-bottom: 10px !important;
    }
    .footer-bottom .widget {
        margin-bottom: 0;
    }
    .footer-bottom .footer_widget .widget .title,
    .footer-bottom .footer_widget .widget h2 {
        margin: 0 0 6px;
    }
    .footer-bottom .footer_widget p {
        margin-bottom: 8px;
    }
    .footer-bottom .footer_widget p:last-child {
        margin-bottom: 0;
    }
    .footer-bottom .footer_widget .widget_nav_menu ul {
        margin: 0;
        padding: 0;
    }
    .footer-bottom .footer_widget .widget_nav_menu ul li {
        margin-bottom: 4px;
    }
}

/* ==========================================================================
 * SVT BLENDED SCORE (B1) — added 2026-09-11, extended the same day to all
 * three surfaces that used to draw a pair of rings.
 *
 * SUPERSEDES the loop-only block first appended here. It is not appended
 * beside it: the patch swapped the old block out, because a superseded rule
 * left in place is the dead-CSS hazard this project already records twice.
 *
 * THE THREE SURFACES, and they are listed rather than reached by a loose
 * selector so that adding a fourth is a visible edit:
 *   .woocommerce .products .product      loop card  (brand + category archives, shop)
 *   .single-product .svt-product-scores-row   product header
 *   .svt-cmp                              compare grid card
 *
 * EVERY RULE CARRIES !important AND A SELECTOR DEEPER THAN THE BLOCK IT HAS
 * TO BEAT. functions.php and svt-product-tabs.php both print inline <style>
 * blocks that set .svt-loop-scores and its children with !important. An
 * inline block in the head is not an inline attribute — it competes on
 * specificity and source order like any other sheet, so higher specificity
 * plus !important wins whichever order they land in. That is the only
 * version of this that is not a bet on order.
 * ========================================================================== */

.woocommerce .products .product .svt-loop-scores--blend,
.single-product .svt-product-scores-row .svt-loop-scores--blend,
.svt-cmp .svt-loop-scores--blend {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 10px !important;
    line-height: 0 !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-score-unit.is-blend,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-score-unit.is-blend,
.svt-cmp .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    line-height: 0 !important;
    padding: 0 !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-parts,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts,
.svt-cmp .svt-loop-scores--blend .svt-loop-parts {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    line-height: normal !important;
    text-align: left !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-parts-cap,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts-cap,
.svt-cmp .svt-loop-scores--blend .svt-loop-parts-cap {
    display: block !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    line-height: 10.35px !important;
    color: var(--svt-ink, #26231E) !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part,
.svt-cmp .svt-loop-scores--blend .svt-loop-part {
    display: block !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-row,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-row,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-row {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-lbl,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-lbl,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-lbl {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 9px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.15 !important;
    color: var(--svt-ink, #26231E) !important;
}

/* Icons. Masked kit files, so the colour is set here and only here -- the same
   mechanism as .svt-bar-logo.is-line. No SVG is authored and no mark is added
   to svt_bar_mark_catalog(); both files are already on disk.
   ?v= is carried because a mask URL replaced in place otherwise serves the old
   bytes indefinitely. */
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-ico,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-ico,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-ico {
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: 13px !important;
    height: 13px !important;
    background-color: var(--svt-brass, #C8842B) !important;
    -webkit-mask-repeat: no-repeat !important;
            mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
            mask-position: center !important;
    -webkit-mask-size: contain !important;
            mask-size: contain !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-ico.is-usability,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-ico.is-usability {
    -webkit-mask-image: url("svt-kit/icons/circle-check-solid.svg?v=1") !important;
            mask-image: url("svt-kit/icons/circle-check-solid.svg?v=1") !important;
}

.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-ico.is-social,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-ico.is-social {
    -webkit-mask-image: url("svt-kit/icons/message-circle-solid.svg?v=1") !important;
            mask-image: url("svt-kit/icons/message-circle-solid.svg?v=1") !important;
}

/* Loop cards only. Stroke glyphs at an integer 16px, aligned with the
   Usability / Social word -- not the label+bar stack. Bars stop short of
   the Buy Now edge. Ring paint stays in svt-score-ring.css. */
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-parts {
    padding-right: 14px !important;
    box-sizing: border-box !important;
}
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-row {
    align-items: center !important;
}
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-ico {
    width: 16px !important;
    height: 16px !important;
    background-color: #3d3d3d !important;
    -webkit-mask-size: 16px 16px !important;
            mask-size: 16px 16px !important;
}
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-ico.is-usability {
    -webkit-mask-image: url("svt-kit/icons/circle-check.svg?v=2") !important;
            mask-image: url("svt-kit/icons/circle-check.svg?v=2") !important;
}
.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-ico.is-social {
    -webkit-mask-image: url("svt-kit/icons/message-circle.svg?v=2") !important;
            mask-image: url("svt-kit/icons/message-circle.svg?v=2") !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-val,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-val,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-val {
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    color: var(--svt-ink, #26231E) !important;
    font-variant-numeric: tabular-nums !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-bar,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-bar,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-bar {
    display: block !important;
    height: 4px !important;
    margin-top: 2px !important;
    border-radius: 99px !important;
    background: var(--svt-remainder-green, #A1B096) !important; /*b54*/
    overflow: hidden !important;
}

.woocommerce .products .product .svt-loop-scores--blend .svt-loop-part-bar i,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-bar i,
.svt-cmp .svt-loop-scores--blend .svt-loop-part-bar i,
.svt-score-legend .svt-loop-scores--blend .svt-loop-part-bar i {
    display: block !important;
    height: 100% !important;
    width: var(--svt-bar-w, 0%);
    border-radius: 99px !important;
    background: var(--svt-brass, #C8842B) !important;
}
@media (prefers-reduced-motion: reduce) {
    .svt-loop-scores--blend .svt-loop-part-bar i {
        width: var(--svt-bar-w, 0%) !important;
    }
}

/* --- per-surface, and only where the surface genuinely differs ----------- */

/* Product header. The row is centred and the tier badge sits beside this
   block, so the parts column takes a floor rather than the full width --
   without one it collapses to the width of the word "Usability". The cap is
   suppressed in PHP here: the badge already reads SVT SCORE. */
.single-product .svt-product-scores-row .svt-loop-scores--blend {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts {
    min-width: 0 !important;
    max-width: 100% !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-lbl,
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts-cap {
    font-size: 11px !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-val {
    font-size: 13px !important;
    font-weight: 800 !important;
}

/* The product header paints its ring inset cream with a dark numeral. That is
   right for the pair that used to sit there and wrong for a single headline
   ring, which has to read as the same object as the loop card's and the
   compare card's. Inverted here at one selector deeper than the rules it has
   to beat -- style.css sets .single-product .svt-product-scores-row
   .radial-progress .inset at 0,4,0 with !important, so 0,5,0 with !important
   wins -- and scoped to .svt-loop-scores--blend, so the unscored ring and the
   single-half ring on the same surface keep the treatment they already have. */
.single-product .svt-product-scores-row .svt-loop-scores--blend .radial-progress .inset {
    background: var(--svt-ink, #26231E) !important;
    background-color: var(--svt-ink, #26231E) !important;
    box-shadow: none !important;
}
.single-product .svt-product-scores-row .svt-loop-scores--blend .radial-progress .inset .percentage {
    color: #FFFFFF !important;
}

/* Compare card. Narrower than either, so the column takes what is left of the
   card's inner width and nothing is given a floor it cannot meet. */
.svt-cmp .svt-loop-scores--blend {
    width: 100% !important;
    gap: 8px !important;
}
.svt-cmp .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
    gap: 8px !important;
}

@media (max-width: 560px) {
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts {
        min-width: 0 !important;
    }
}

/* Product header only. Compact Usability / Social on phones; loop + compare cards stay. */
@media (max-width: 768px) {
    .single-product .svt-product-scores-row .svt-loop-scores--blend,
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-score-unit.is-blend {
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        padding-right: 6px !important;
        box-sizing: border-box !important;
        gap: 4px !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-row {
        gap: 6px !important;
        align-items: center !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-lbl,
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-parts-cap {
        font-size: 10px !important;
        letter-spacing: 0.02em !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-val {
        font-size: 12px !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-ico {
        width: 12px !important;
        height: 12px !important;
    }
    .single-product .svt-product-scores-row .svt-loop-scores--blend .svt-loop-part-bar {
        height: 3px !important;
        margin-top: 2px !important;
    }
}


/* SVT typography  (svt-fonts-1, 2026-09-12)
   Faces are enqueued by svt-core/includes/svt-fonts.php, not by @import.
   MEASURED 2026-09-12 AND SUPERSEDED THE SAME DAY. It read that being last
   in this file bought nothing, because the sheet was served as `rhstyle` and
   printed FOURTH while the parent printed FOURTEENTH. Since the cascade patch
   this file is served as `svt-child` and prints LAST, after every parent sheet
   and after the inline `svt-tabs` block. A rule here that merely TIES now wins.
   The selectors below therefore win on specificity, not on source order.
   Weight stops at 700 -- IBM Plex Sans has no 800 on Google Fonts. */
:root {
	--svt-font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--svt-font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}

html body {
	/* 0,0,2 -- beats the parent theme's bare `body` rule, which prints
	   after this stylesheet does. Specificity, not source order. */
	font-family: var(--svt-font-sans);
}

/* Form controls do not inherit font by default, which is why eleven of them
   render in the browser's Arial while everything around them does not. */
html body button,
html body input,
html body select,
html body textarea,
html body optgroup {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

/* SVT-TABULAR-FIGURES
   IBM Plex Sans defaults to proportional figures, so $1,998 reads unevenly and
   prices do not align down a comparison column. One declaration for the price,
   the rank line and the bar labels, on every surface that prints them.
   .svt-bar-score is styled from inline CSS in svt-product-tabs.php and
   .svt-cmp-bar-score from svt-compare.css; neither declares this property, so
   there is nothing here to lose a tie against. */
.svt-cmp-price,
.woocommerce .products.grid_woo .product .price_for_grid .price,
.table_view_charts .price-woo-compare-chart,
.svt-rank,
.svt-bar-score,
.svt-cmp-bar-score {
    font-variant-numeric: tabular-nums;
}

/* SVT-HEADING-AND-MONO
   Two changes, and both depend on this file printing LAST - see the corrected
   note above. (0,1,0) and (0,2,1) tie their incumbents and win on order, so
   nothing here needs !important and nothing here uses it.

   1. .svt-stack-title was 15px, and 14px below 600px, from the inline svt-tabs
      block - against body prose fixed at 16px !important from that same block.
      A section heading 1-2px smaller than its own paragraphs is the defect.
      Uppercase and the tracking are deliberate and are left alone.

   2. --svt-font-mono was declared here and consumed nowhere. Spec strings here,
      and only spec strings (see the TECHNICAL TEXT block at the end of this file):
      certification codes, flow rates, micron ratings - the values where glyph
      alignment helps a reader compare down a column. The product spec table
      addresses the VALUE as the td inside .woocommerce-product-attributes-item,
      which excludes .attribute_group_name (a td that is a heading); the compare
      page's .svt-cmp-cell-body is exclusive to attribute values and carries no
      typography of its own. Labels are untouched on both.
      The sidebar filter list is deliberately NOT included - those values are
      navigation rather than specifications. */
.svt-stack-title {
    font-size: 18px;
}
@media (max-width: 600px) {
    .svt-stack-title {
        font-size: 17px;
    }
}
.woocommerce-group-attributes-public .woocommerce-product-attributes-item td,
.svt-cmp-section--specs .svt-cmp-cell-body { /* spec sections only - Overview carries Description and Brand, which are prose */
    font-family: var(--svt-font-mono);
}

/* Mobile catalog: Filters + Sort toolbar and bottom sheet. Desktop unchanged. */
.svt-shop-toolbar,
.svt-filter-sheet {
    display: none;
}
@media (max-width: 768px) {
    html.svt-filter-sheet-open,
    html.svt-filter-sheet-open body {
        overflow: hidden !important;
    }
    body.woocommerce #mobile-trigger-sidebar,
    #mobile-trigger-sidebar,
    #mobile-trigger-sidebar.rehub-main-color {
        display: none !important;
    }
    body.tax-product_cat aside.sidebar,
    body.post-type-archive-product aside.sidebar {
        display: none !important;
    }
    body.tax-product_brand aside.sidebar .widget:not(.svt-brand-archive-logo) {
        display: none !important;
    }
    .woocommerce .woocommerce-ordering,
    form.woocommerce-ordering {
        display: none !important;
    }
    .svt-shop-toolbar {
        display: flex;
        align-items: stretch;
        gap: 8px;
        width: 100%;
        flex-basis: 100%;
        margin: 12px 0 0;
        padding-right: 0;
        box-sizing: border-box;
        position: relative;
        z-index: 10070;
    }
    .svt-shop-toolbar__filters,
    .svt-shop-toolbar__sort {
        flex: 1 1 calc(50% - 4px);
        width: calc(50% - 4px);
        max-width: calc(50% - 4px);
        min-width: 0;
    }
    .svt-shop-toolbar__filters,
    .svt-shop-toolbar__sort > summary {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 38px;
        padding: 8px 10px;
        border: 1px solid #D6D1C7;
        border-radius: 10px;
        background: var(--svt-hairline, #E5E1D8);
        background-color: var(--svt-hairline, #E5E1D8);
        color: var(--svt-ink, #26231E);
        font-size: 13px;
        font-weight: 500;
        line-height: 1.3;
        cursor: pointer;
        box-sizing: border-box;
        list-style: none;
    }
    .svt-shop-toolbar__sort > summary {
        justify-content: flex-start;
    }
    .svt-shop-toolbar__sort > summary::-webkit-details-marker,
    .svt-shop-toolbar__sort > summary::marker {
        display: none;
        content: none;
    }
    .svt-shop-toolbar__ico {
        display: inline-flex;
        color: var(--svt-ink, #26231E);
    }
    .svt-shop-toolbar__badge {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 18px;
        height: 18px;
        padding: 0 5px;
        border-radius: 999px;
        background: var(--svt-ink, #26231E);
        color: var(--svt-paper, #FAF8F4);
        font-size: 11px;
        font-weight: 700;
        line-height: 1;
    }
    .svt-shop-toolbar__sort {
        position: relative;
        display: flex;
        flex: 1 1 0;
        min-width: 0;
    }
    .svt-shop-toolbar__sort > summary {
        width: 100%;
        appearance: none;
        -webkit-appearance: none;
        -webkit-tap-highlight-color: transparent;
        white-space: nowrap;
        overflow: hidden;
    }
    .svt-shop-toolbar__sort-label {
        min-width: 0;
        flex: 1 1 auto;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .svt-shop-toolbar__sort-chevron {
        flex: 0 0 auto;
        width: 7px;
        height: 7px;
        margin-top: -3px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: rotate(45deg);
    }
    .svt-shop-toolbar__sort[open] > summary .svt-shop-toolbar__sort-chevron {
        margin-top: 2px;
        transform: rotate(-135deg);
    }
    .svt-shop-toolbar__sort[open] > summary,
    .svt-shop-toolbar__sort > summary:hover,
    .svt-shop-toolbar__sort > summary:focus,
    .svt-shop-toolbar__sort > summary:focus-visible,
    .svt-shop-toolbar__sort > summary:active {
        background: var(--svt-surface-control, #FFFFFF) !important;
        background-color: var(--svt-surface-control, #FFFFFF) !important;
        border: 1px solid #D6D1C7 !important;
        border-color: #D6D1C7 !important;
        box-shadow: none;
        outline: none;
        color: var(--svt-ink, #26231E);
    }
    .svt-shop-toolbar__sort-list {
        position: absolute;
        z-index: 10070;
        top: 100%;
        right: 0;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        margin: 4px 0 0;
        padding: 6px 0;
        list-style: none;
        background: var(--svt-hairline, #E5E1D8);
        background-color: var(--svt-hairline, #E5E1D8);
        border: 1px solid #D6D1C7;
        border-radius: 10px;
        box-shadow: none;
    }
    .svt-shop-toolbar__sort-list a {
        display: block;
        padding: 10px 12px;
        color: var(--svt-ink, #26231E);
        font-size: 13px;
        font-weight: 500;
        text-decoration: none;
        background: transparent;
    }
    .svt-shop-toolbar__sort-list a[aria-current="true"],
    .svt-shop-toolbar__sort-list a:hover,
    .svt-shop-toolbar__sort-list a:focus-visible {
        color: var(--svt-click-ink);
        background: var(--svt-surface-control-on, #F2EEE6);
    }

    .svt-active-filters {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        width: 100%;
        flex-basis: 100%;
        margin: 16px 0 14px;
        box-sizing: border-box;
    }
    .svt-active-filters__list {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .svt-active-filters__item {
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .svt-active-filters__chip {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 32px;
        padding: 6px 12px;
        border: 1px solid #D6D1C7;
        border-radius: 8px;
        background: var(--svt-hairline, #E5E1D8);
        color: var(--svt-ink, #26231E);
        font-size: 13px;
        font-weight: 500;
        line-height: 1.3;
        text-decoration: none;
        box-sizing: border-box;
    }
    .svt-active-filters__label {
        color: var(--svt-ink, #26231E);
    }
    .svt-active-filters__x {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 22px;
        min-height: 22px;
        color: var(--svt-slate-ink, #655F55);
        font-size: 16px;
        line-height: 1;
        font-weight: 600;
    }
    .svt-active-filters__clear {
        padding: 6px 4px;
        border: 0;
        background: none;
        font-size: 13px;
        font-weight: 500;
        color: var(--svt-click-ink);
        text-decoration: none;
        cursor: pointer;
    }
    .svt-active-filters__clear:hover,
    .svt-active-filters__clear:focus-visible {
        color: var(--svt-click-deep);
        text-decoration: underline;
    }
    .widget_layered_nav_filters,
    .woocommerce-widget-layered-nav-filters {
        display: none !important;
    }

    .svt-filter-sheet {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 100040;
        pointer-events: none;
    }
    .svt-filter-sheet.is-open {
        pointer-events: auto;
    }
    .svt-filter-sheet[hidden] {
        display: none !important;
    }
    .svt-filter-sheet__backdrop {
        position: absolute;
        inset: 0;
        background: color-mix(in srgb, var(--svt-ink, #26231E) 40%, transparent);
        opacity: 0;
        transition: opacity 0.2s ease;
    }
    .svt-filter-sheet.is-open .svt-filter-sheet__backdrop {
        opacity: 1;
    }
    .svt-filter-sheet__panel {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        display: flex;
        flex-direction: column;
        height: auto;
        max-height: 66vh;
        max-height: min(66vh, 66svh);
        overflow: hidden;
        background: var(--svt-page, #F2EEE6);
        border-radius: 16px 16px 0 0;
        transform: translateY(100%);
        transition: transform 0.22s ease;
        box-sizing: border-box;
    }
    .svt-filter-sheet.is-open .svt-filter-sheet__panel {
        transform: translateY(0);
    }
    .svt-filter-sheet__handle {
        flex: 0 0 auto;
        width: 40px;
        height: 4px;
        margin: 6px auto 0;
        padding: 12px 40px;
        box-sizing: content-box;
        border-radius: 999px;
        background: #D6D1C7;
        background-clip: content-box;
        cursor: pointer;
    }
    .svt-filter-sheet__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 16px 12px;
    }
    .svt-filter-sheet__head h2 {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
        color: var(--svt-ink, #26231E);
    }
    .svt-filter-sheet__x {
        width: 36px;
        height: 36px;
        padding: 0;
        border: 0;
        background: none;
        color: var(--svt-ink, #26231E);
        font-size: 28px;
        line-height: 1;
        cursor: pointer;
    }
    .svt-filter-sheet__body {
        flex: 1 1 auto;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 12px 12px;
    }
    .svt-filter-sheet__foot {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        flex: 0 0 auto;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
        border-top: 1px solid var(--svt-hairline, #E5E1D8);
        background: var(--svt-page, #F2EEE6);
    }
    .svt-filter-sheet__clear {
        font-size: 13px;
        font-weight: 500;
        color: var(--svt-click-ink);
        text-decoration: none;
    }
    .svt-filter-sheet__clear:hover,
    .svt-filter-sheet__clear:focus-visible {
        color: var(--svt-click-deep);
        text-decoration: underline;
    }
    .svt-filter-sheet__clear.is-idle {
        visibility: hidden;
        pointer-events: none;
        color: transparent;
    }
    .svt-filter-sheet__done {
        min-height: 38px;
        padding: 8px 18px;
        border: 0;
        border-radius: 10px;
        background: var(--svt-ink, #26231E);
        color: var(--svt-paper, #FAF8F4);
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
    }

    .svt-filter-sheet .svt-shop-brands,
    .svt-filter-sheet .svt-filter-acc {
        display: block;
        border: 1px solid #E5E1D8;
        border-radius: 10px;
        overflow: hidden;
        margin-bottom: 12px;
        background: transparent;
    }
    .svt-filter-sheet .svt-shop-brands {
        display: revert !important;
    }
    .svt-filter-sheet details.svt-shop-brands:not([open]) > *:not(summary) {
        display: none !important;
    }
    .svt-filter-sheet .svt-filter-acc__sum {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin: 0;
        padding: 10px 14px;
        border-bottom: 1px solid var(--svt-hairline);
        background: var(--svt-hairline);
        font-size: 18px;
        font-weight: 700;
        line-height: 1.25;
        color: #222;
    }
    .svt-filter-sheet .svt-shop-brands__list,
    .svt-filter-sheet .svt-product-category-list,
    .svt-filter-sheet .woocommerce-widget-layered-nav-list {
        padding: 8px 0 !important;
        margin: 0;
        max-height: none !important;
        overflow: visible !important;
    }
    .svt-shop-brands__link,
    .svt-shop-brands__link:link,
    .svt-shop-brands__link:visited,
    .svt-shop-brands__link:active,
    .svt-product-category-list li a,
    .svt-product-category-list li a:link,
    .svt-product-category-list li a:visited,
    .svt-product-category-list li a:active,
    .svt-filter-sheet .svt-shop-brands__link,
    .svt-filter-sheet .svt-shop-brands__link:link,
    .svt-filter-sheet .svt-shop-brands__link:visited,
    .svt-filter-sheet .svt-shop-brands__link:active,
    .svt-filter-sheet .svt-product-category-list li a,
    .svt-filter-sheet .svt-product-category-list li a:link,
    .svt-filter-sheet .svt-product-category-list li a:visited,
    .svt-filter-sheet .svt-product-category-list li a:active {
        display: flex;
        align-items: center;
        padding: 8px 14px;
        line-height: 1.4;
        color: var(--svt-ink, #26231E);
        text-decoration: none;
        background: transparent;
        -webkit-tap-highlight-color: transparent;
    }
    .svt-filter-sheet .svt-shop-brands__link,
    .svt-filter-sheet .svt-product-category-list li a {
        padding: 8px 14px !important;
    }
    .svt-shop-brands__link:visited,
    .svt-shop-brands__link:visited .svt-shop-brands__name,
    .svt-shop-brands__link:visited .svt-shop-brands__count,
    .svt-product-category-list li a:visited,
    .svt-product-category-list li a:visited .svt-product-category-name,
    .svt-product-category-list li a:visited .count,
    .svt-filter-sheet .svt-shop-brands__name,
    .svt-filter-sheet .svt-product-category-name {
        color: var(--svt-ink, #26231E);
        text-decoration: none;
    }
    .svt-filter-sheet .svt-shop-brands__link::before,
    .svt-filter-sheet .svt-product-category-list li a:before {
        content: none !important;
        display: none !important;
    }
    .svt-filter-sheet .svt-shop-brands__count,
    .svt-filter-sheet .svt-product-category-list .count {
        color: var(--svt-ink, #26231E); /*b53*/
        font-size: 80%;
        /*b53 opacity 0.8 removed*/
    }
    .svt-shop-brands__link:focus-visible,
    .svt-product-category-list li a:focus-visible,
    .svt-filter-sheet .svt-shop-brands__link:focus-visible,
    .svt-filter-sheet .svt-product-category-list li a:focus-visible {
        color: var(--svt-click-ink);
    }
    .svt-shop-brands__link:focus-visible .svt-shop-brands__name,
    .svt-product-category-list li a:focus-visible .svt-product-category-name,
    .svt-filter-sheet .svt-shop-brands__link:focus-visible .svt-shop-brands__name,
    .svt-filter-sheet .svt-product-category-list li a:focus-visible .svt-product-category-name {
        color: var(--svt-click-ink);
        text-decoration: underline;
    }
    @media (hover: hover) and (pointer: fine) {
        .svt-shop-brands__link:hover,
        .svt-product-category-list li a:hover,
        .svt-filter-sheet .svt-shop-brands__link:hover,
        .svt-filter-sheet .svt-product-category-list li a:hover {
            color: var(--svt-click-ink);
        }
        .svt-shop-brands__link:hover .svt-shop-brands__name,
        .svt-product-category-list li a:hover .svt-product-category-name,
        .svt-filter-sheet .svt-shop-brands__link:hover .svt-shop-brands__name,
        .svt-filter-sheet .svt-product-category-list li a:hover .svt-product-category-name {
            color: var(--svt-click-ink);
            text-decoration: underline;
        }
    }
    .svt-filter-sheet .svt-shop-brands__more {
        display: inline-block;
        margin: 2px 14px 12px;
        padding: 0;
        border: 0;
        background: none;
        font-size: 13px;
        font-weight: 500;
        color: var(--svt-click-ink);
        cursor: pointer;
    }
    .svt-filter-sheet .svt-shop-brands__more:hover,
    .svt-filter-sheet .svt-shop-brands__more:focus-visible {
        color: var(--svt-click-deep);
        text-decoration: underline;
    }
    .svt-filter-sheet .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li,
    .svt-filter-sheet .svt-filter-acc--attr .woocommerce-widget-layered-nav-list__item {
        display: flex !important;
        align-items: center !important;
        float: none !important;
        padding: 8px 14px !important;
        margin: 0 !important;
        line-height: 1.4 !important;
    }
    .svt-filter-sheet .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a {
        display: flex !important;
        align-items: center !important;
        float: none !important;
        padding: 0 !important;
        line-height: 1.4 !important;
    }
    .svt-filter-sheet .svt-filter-acc--attr .woocommerce-widget-layered-nav-list li a:before {
        display: inline-block !important;
        margin: 0 8px 0 0 !important;
    }
    .svt-filter-sheet .svt-filter-more {
        display: none !important;
    }
}

/* Directory pages: /all-brands/ and /all-categories/. */
body.svt-directory .sidebar,
body.svt-directory aside.sidebar {
    display: none !important;
}
body.svt-directory .main-side {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
}
body.svt-directory .svt-dir {
    margin: 8px 0 48px;
}
body.svt-directory .svt-dir__band + .svt-dir__band {
    margin-top: 48px;
    padding-top: 40px;
    border-top: 1px solid var(--svt-hairline, #E5E1D8);
}
body.svt-directory .svt-dir__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px 24px;
    margin: 0 0 24px;
}
body.svt-directory .svt-dir__title {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--svt-ink, #26231E);
}
body.svt-directory .svt-dir__count {
    display: inline-block;
    margin-left: 10px;
    font-size: 14px;
    font-weight: 400;
    color: var(--svt-slate-ink, #655F55);
}
body.svt-directory .svt-dir__all {
    flex: 0 0 auto;
    font-size: 14px;
    font-weight: 500;
    color: var(--svt-click-ink, #35589C);
    text-decoration: none;
}
body.svt-directory .svt-dir__all:hover,
body.svt-directory .svt-dir__all:focus-visible {
    color: var(--svt-click-deep);
    text-decoration: underline;
}
body.svt-directory .svt-dir__grid {
    display: grid;
    gap: 18px;
    grid-template-columns: 1fr;
}
body.svt-directory .svt-dir-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--svt-hairline, #E5E1D8);
    border-radius: 12px;
    background: var(--svt-card, #fff);
}
body.svt-directory .svt-dir-card__media {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    height: 100px;
    padding: 14px 16px;
    background: var(--svt-page, #F2EEE6);
    border-bottom: 1px solid var(--svt-hairline, #E5E1D8);
    color: inherit;
    text-decoration: none;
}
body.svt-directory .svt-dir--brands .svt-dir-card__media {
    height: 100px;
}
body.svt-directory .svt-dir--cats .svt-dir-card__media {
    height: 128px;
    padding: 10px 12px;
}
body.svt-directory .svt-dir-card__media img {
    max-width: 80%;
    max-height: 68px;
    width: auto;
    height: auto;
    object-fit: contain;
}
body.svt-directory .svt-dir--cats .svt-dir-card__media img {
    max-width: 100%;
    max-height: 108px;
    object-fit: contain;
}
body.svt-directory .svt-dir-card__fallback {
    font-size: 15px;
    font-weight: 700;
    color: var(--svt-ink, #26231E);
    text-align: center;
}
body.svt-directory .svt-dir-card__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 14px 16px 16px;
}
body.svt-directory .svt-dir-card__name {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--svt-ink, #26231E);
    text-decoration: none;
}
body.svt-directory .svt-dir-card__name:hover,
body.svt-directory .svt-dir-card__name:focus-visible {
    color: var(--svt-ink, #26231E);
    text-decoration: none;
}
body.svt-directory .svt-dir-card__count {
    margin-top: 4px;
    font-size: 13px;
    color: var(--svt-slate-ink, #655F55);
}
body.svt-directory .svt-dir-card__browse {
    margin-top: auto;
    padding-top: 10px;
    font-size: 13px;
    font-weight: 500;
    color: var(--svt-click-ink, #35589C);
    text-decoration: none;
}
body.svt-directory .svt-dir-card__browse:hover,
body.svt-directory .svt-dir-card__browse:focus-visible {
    color: var(--svt-click-deep);
    text-decoration: underline;
}
@media (min-width: 769px) {
    body.svt-directory .svt-dir__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
    }
}
@media (min-width: 900px) and (max-width: 1199px) {
    body.svt-directory .svt-dir__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (min-width: 1200px) {
    body.svt-directory .svt-dir__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* SVT directory cards on a phone, 2026-09-16. Brands and Categories show two
   cards a row up to 560px and three to 768px, with a shorter logo well and
   no "Browse {name}" line; the logo and the name are both links already. */
@media (max-width: 768px) {
    body.svt-directory .svt-dir__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    body.svt-directory .svt-dir--brands .svt-dir-card__media { height: 72px; padding: 10px 12px; }
    body.svt-directory .svt-dir--cats .svt-dir-card__media { height: 104px; padding: 8px 10px; }
    body.svt-directory .svt-dir-card__media img { max-width: 88%; max-height: 44px; }
    body.svt-directory .svt-dir--cats .svt-dir-card__media img { max-width: 100%; max-height: 88px; }
    body.svt-directory .svt-dir-card__body { padding: 10px 12px 12px; }
    body.svt-directory .svt-dir-card__name { font-size: 15px; line-height: 1.25; }
    body.svt-directory .svt-dir-card__count { margin-top: 2px; font-size: 12.5px; }
    body.svt-directory .svt-dir-card__browse { display: none; }
    body.svt-directory .svt-dir__count { display: block; margin: 4px 0 0; }
}
@media (min-width: 561px) and (max-width: 768px) {
    body.svt-directory .svt-dir__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* end SVT directory cards on a phone */

/* SVT radius tokens, 2026-09-16 (Content Standards 1.47-1.48). Appended by the product-vs-product installer. */
/* SITE PATCH — radius tokens for child style.css :root (Michael, 2026-09-16: "if I change it in one
   place, it should change in all"). Values are today's: Buy Now 3px everywhere it is styled now. */
:root {
	--svt-radius-buy: 3px;      /* every Buy Now: product pages, grids, compare page, VS cards */
	--svt-radius-control: 8px;  /* tabs, links styled as buttons, "See the review", "Show more" */
	--svt-radius-inner: 8px;    /* cells and boxes inside a card */
	--svt-radius-chip: 4px;     /* small tags, about 24px tall */
	--svt-radius-card: 12px;    /* cards and panels */
}
.svtvs .pcard__buy, .svtvs .pcard__buy.svt-buy-now, .svtvs .pcard a.pcard__buy,
.woocommerce .products .woo_grid_compact a.svt-buy-now { border-radius: var(--svt-radius-buy) !important; }
.svtvs .h2h__tabs label, .svtvs .blink { border-radius: var(--svt-radius-control); }
.woocommerce .products.grid_woo .product .btn_for_grid a.svt-buy-now { border-radius: var(--svt-radius-buy) !important; }
/* end SVT radius tokens */
/* SVT LOGO FIT, 2026-09-16 (Michael: compact logos render far too small).
   A logo box of fixed height lets a wide wordmark fill it while a square mark
   gets a sliver: in the 180x44 verdict box on a phone, Express Water's ink
   covered 1,549 px2 and Crystal Quest's 7,668. Every brand logo now carries
   its ink shape (--svt-logo-r, width over height, and --svt-logo-ih, the ink's
   share of the file height; svt-vs-cards.php), and in the places below the
   logo is sized so its INK covers the same area, --svt-lf-a in px2, up to a
   tallest ink height, --svt-lf-h. The box's max-width still caps a wide
   wordmark, so no logo renders smaller than before. A browser without CSS
   sqrt() drops the rule and keeps the old sizes. The versus hero and the
   fact-card header keep their paint-only --svt-logo-k. */
body.svt-directory .svt-dir--brands .svt-dir-card__media img.svt-brandlogo,
.svtvs .verdict.verdict-card .verdict-card__winlogo img.svt-brandlogo,
.svt-vscards .svt-vscard:not(.svt-vscard--pvp) .svt-vscard__img.svt-brandlogo,
.svt-comparedin .svt-cilink__chip:not(.svt-cilink__chip--pvp) .svt-cilink__img.svt-brandlogo {
	height: calc(min(var(--svt-lf-h), sqrt(var(--svt-lf-a) / var(--svt-logo-r, 4)) * 1px) / var(--svt-logo-ih, 1)) !important;
	width: auto !important;
	max-height: none !important;
	max-width: var(--svt-lf-w, 100%) !important;
	object-fit: contain;
	scale: none !important;
}
body.svt-directory .svt-dir--brands .svt-dir-card__media img.svt-brandlogo { --svt-lf-a: 11000; --svt-lf-h: 68px; --svt-lf-w: 80%; }
.svtvs .verdict.verdict-card .verdict-card__winlogo img.svt-brandlogo { --svt-lf-a: 10000; --svt-lf-h: 64px; --svt-lf-w: 200px; }
.svt-vscards .svt-vscard:not(.svt-vscard--pvp) .svt-vscard__img.svt-brandlogo { --svt-lf-a: 5600; --svt-lf-h: 56px; --svt-lf-w: 100%; }
.svt-comparedin .svt-cilink__chip:not(.svt-cilink__chip--pvp) .svt-cilink__img.svt-brandlogo { --svt-lf-a: 1000; --svt-lf-h: 24px; --svt-lf-w: calc((var(--svt-chip-w, 150px) - 50px) / 2); }
@media (max-width: 900px) {
	.svtvs .verdict.verdict-card .verdict-card__winlogo img.svt-brandlogo { --svt-lf-a: 7600; --svt-lf-h: 56px; --svt-lf-w: 180px; }
}
@media (max-width: 768px) {
	body.svt-directory .svt-dir--brands .svt-dir-card__media img.svt-brandlogo { --svt-lf-a: 5200; --svt-lf-h: 48px; --svt-lf-w: 88%; }
}
/* end SVT logo fit */

/* TECHNICAL TEXT (Roadmap 4b; narrowed 2026-09-17, Content Standards 1.56):
   --svt-font-mono is for specification values only - the product page's
   Additional information table and the spec rows on the compare and
   product-vs-product pages. Pros and cons are sentences and are set in Sans
   (Michael, 2026-09-17: they read as body text, not as values).

   The card pros were clamped to two lines, which cut claims mid-sentence
   (840-1000px, and on phones). The clamp stays lifted: the two cards share a
   subgrid, so their rows still line up when a pro runs to three or four
   lines. */
/* Scores beside prose are Sans too: the verdict card's "6.8 vs 6.5" and the
   score line under related comparison cards. body lifts these over the
   svt-vs.css and svt-vs-cards.css rules whatever the load order. */
body .svtvs .verdict-card__nums,
body .svt-vscard .pvp-vsc__sub b {
    font-family: var(--svt-font-sans, inherit);
    font-variant-numeric: tabular-nums;
}
/* Pros and cons hang, 2026-09-17 (Michael): a wrapped line lines up with
   the first line's text, not under the tick or cross. The icon comes out of
   the text flow and sits in a 26px gutter on the first line. */
.wpsm_pros ul li,
.wpsm_cons ul li {
    position: relative;
    padding-left: 26px;
}
.wpsm_pros ul li::before,
.wpsm_cons ul li::before {
    position: absolute;
    left: 0;
    top: 0;
    padding: 0;
    line-height: inherit;
}
body .svtvs .pcard__pc .pc span {
    display: block;
    -webkit-line-clamp: none;
    overflow: visible;
}
/* end SVT technical text */

/* COMPARE TAB ON PHONES (Roadmap 4b, Michael 2026-09-16): hidden until the
   reader is past the first screen. At 390px no single tab position clears
   the hero text on every template, because the hero height depends on the
   names (measured on eight templates, Method - Comparison Pages Part 13).
   The watcher in inc/svt-compare-tray.php sets html.svt-fold-js at once and
   html.svt-past-fold from 80% of a screen down (or on a page too short to
   scroll that far). An add while above the fold puts .svt-tab-peek on the
   tab, which keeps it showing. With no script the tray never appears at
   all, and svt-fold-js is what gates this rule, so nothing hides a tab the
   script did not manage. (1,2,2) with !important beats the tab's own
   visible rules above, which are (1,2,2) at most; this is (1,3,2). */
@media (max-width: 768px) {
    html body #re-compare-icon-fixed {
        transition: opacity .2s ease, visibility 0s linear 0s;
    }
    html.svt-fold-js:not(.svt-past-fold) body #re-compare-icon-fixed:not(.svt-tab-peek) {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transition: opacity .2s ease, visibility 0s linear .2s;
    }
}
@media (max-width: 768px) and (prefers-reduced-motion: reduce) {
    html body #re-compare-icon-fixed,
    html.svt-fold-js:not(.svt-past-fold) body #re-compare-icon-fixed:not(.svt-tab-peek) {
        transition: none;
    }
}
/* end SVT compare tab fold */


/* --- Footer widget links: tap targets.  Measured on Live: display:inline, 18px
   tall, zero padding, so every link in the footer list is an 18px target with no
   spacing between rows.  Lighthouse wants 24x24 with separation.  inline-block
   plus 5px of vertical padding makes them 28px, and 4px between rows separates
   them.  On a desktop nothing appears to move; the list grows 8px per row on a
   phone, which is where the audit and the thumbs actually are. --- */
.footer_widget .textwidget ul li { margin-bottom: 4px; }
.footer_widget .textwidget ul li a { display: inline-block; padding: 5px 0; }
/* end SVT footer tap targets */

/* b59 - WCAG 2.2 target size on the gallery zoom control.
   Measured 20x20 against the 24x24 floor, and nothing on the site styles
   this selector, so this rule overrides nothing. The icon keeps its size;
   only the hit area grows, and it stays pinned to the same corner. */
.woocommerce-product-gallery__trigger {
	min-width: 24px;
	min-height: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
/* end b59 target size */

/* b68, 2026-09-23 (Michael): ON A PHONE NOTHING IN THE FIRST SCREEN STARTS BLANK.
   Measured at 412px on Live with the page's scripts held back, which is what a
   phone shows until they run: the versus hero (.versus.reveal) and the ranking
   page's first two panels (.rk-glance, .sec) were opacity 0 until
   IntersectionObserver added .in, and inside the versus hero the two product
   cards (photo, name, category, features, link) stayed at opacity 0 for a
   further 2.05-2.75 s of lineup choreography - two empty white cards under the
   dials on landing. The product page's section heads fade in the same way.
   Phones only: sections are simply there, card contents need no animation to
   appear, and the dial smash, bar grows and ring counts still run. Desktop keeps
   the full choreography. Checked with the rule injected: nothing in the first
   screen of the brand-vs, product-vs, ranking or product template is at opacity
   0 before scripts run, except the vs badge's .shock ring, which is meant to be. */
@media (max-width: 768px) {
	.svtvs .reveal,
	.svtvs .reveal.in {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.svtvs .versus .blogo,
	.svtvs .versus .vhero__img,
	.svtvs .versus .vhero__disc,
	.svtvs .versus .vside h2,
	.svtvs .versus .cat,
	.svtvs .versus .vfeat li,
	.svtvs .versus .blink {
		opacity: 1 !important;
		animation: none !important;
	}
	.svt-product-stack header.svt-stack-head,
	.svt-product-stack .svt-stack-head,
	.svt-stack-section .svt-usability-sheet h2.svt-stack-title,
	.svt-stack-section .svt-social-sheet h2.svt-stack-title {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}
/* end b68 */

/* b71, 2026-09-23: what the site-wide axe sweep found outside the SVT
   templates (436 URLs from the sitemap, 412px, WCAG 2 A/AA).
   - Links inside page copy (Contact, About, the legal pages) took Rehub's
     theme-option brass, 2.67 on cream, and nothing but colour set them apart.
     They take the click ink and an underline.
   - Breadcrumb links were told apart from the crumb text by colour alone
     (click ink against body ink is 1.89:1): underlined. Rehub's style.css
     sets text-decoration:none !important on every link, so both underlines
     need !important to show at all.
   - The sidebar's product thumbnails are lazy images, hidden until they
     load, so on first paint the thumbnail link had no name. Shown from the
     start; the product name link beside it is unchanged. */
.rh-post-wrapper article.post :is(p, li) a:not([class]) {
	color: var(--svt-click-ink, #35589C);
	text-decoration: underline !important;
	text-underline-offset: 2px;
	text-decoration-thickness: 1px;
}
nav.woocommerce-breadcrumb a,
.woocommerce-breadcrumb a {
	text-decoration: underline !important;
	text-underline-offset: 2px;
	text-decoration-thickness: 1px;
}
.widget.top_offers .deal-pic-wrapper img.lazyload {
	visibility: visible;
}
/* end b71 */

/* b100, 2026-09-30 (Michael): on a phone the footer's Site and Legal lists sat
   one under the other in the left half of the screen. They now share a row, 50%
   each, and About keeps the full width above them. Measured on Live by injection
   at 375px and 320px: every link stays on one line (Affiliate Disclosure is the
   widest, 118px from x=172 at 320px), no horizontal overflow. The base mobile rule
   sets width:100% !important, so this matches it with more specificity. */
@media (max-width: 767px) {
	.footer-bottom .col_wrap_three > .footer_widget.col_item:nth-child(2),
	.footer-bottom .col_wrap_three > .footer_widget.col_item:nth-child(3) {
		width: 50% !important;
		flex: 0 0 50%;
		box-sizing: border-box;
	}
	.footer-bottom .col_wrap_three > .footer_widget.col_item:nth-child(3) {
		padding-left: 12px !important;
	}
}
/* end b100 */

/* b101, 2026-09-30 (Michael): the footer sits at the bottom of every page. On a
   window taller than the page, the cream page background showed below the footer
   (196px on the Capillus brand page at 1640x1960). The outer wrap is now a column
   at least one screen tall, and the footer group takes the spare space above it.
   Measured on Live by injection on 13 pages (home, product, brand, category, shop,
   comparisons, a comparison, a ranking, an answer, contact, search, 404) at
   1640x1960 and 5 at 375x812: no header, content or footer box moved or resized,
   no horizontal overflow, footer bottom = page bottom. No other stylesheet sets
   display, height or margins on these selectors. The admin-bar lines stop a
   logged-in page scrolling by the bar's height. */
.rh-outer-wrap {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}
.rh-outer-wrap > .footer-bottom,
.rh-outer-wrap > #theme_footer {
	margin-top: auto;
}
.rh-outer-wrap > .footer-bottom ~ #theme_footer {
	margin-top: 0;
}
body.admin-bar .rh-outer-wrap {
	min-height: calc(100vh - 32px);
}
@media screen and (max-width: 782px) {
	body.admin-bar .rh-outer-wrap {
		min-height: calc(100vh - 46px);
	}
}
/* end b101 */

/* b118, 2026-10-06 (Michael): score bars are segmented, ten to a bar, one segment
   to a point - the bar's version of the ring's ticks. One mask on the track cuts
   the track and its fill together, so no markup changes, and a fill that stops
   inside a point stops inside that segment: 6.6 reads six whole segments and
   most of a seventh. Nothing rounds to a whole segment. The gaps are cut, not
   painted, so they show whatever the bar sits on, as the ring's ticks do.
   :is(..., #svt-seg) carries an id's weight, so the 2px radius beats every bar's
   own !important radius; no element has that id.
   Not segmented: bars that are not scores (the evidence counts on a versus page,
   the compare page's scroll bar, the distribution chart) and the striped
   "not published" bars. */
:root{--svt-seg-n:10;--svt-seg-gap:2px}
:is(.svt-loop-part-bar,.svt-bar-track,.svt-pl-mini,.svt-cmp-bar-track,.svt-minibar__track,.svtvs .diffbar:not(.diffbar--none) .diffbar__track,.svtvs .bar:not(.bar--none) .trk,.svtvs .prow:not(.prow--none) .trk,.svtvs--rank .rk-crit i,.svtvs--rank .rk-tbl__s i,.svtvs--rank .rk-tbar,.svtm-pool__track,#svt-seg){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - var(--svt-seg-gap)),transparent 0);mask-image:linear-gradient(90deg,#000 calc(100% - var(--svt-seg-gap)),transparent 0);-webkit-mask-size:calc((100% + var(--svt-seg-gap)) / var(--svt-seg-n)) 100%;mask-size:calc((100% + var(--svt-seg-gap)) / var(--svt-seg-n)) 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;-webkit-mask-position:0 0;mask-position:0 0;border-radius:2px!important}
:is(.svt-loop-part-bar,.svtvs--rank .rk-tbl__s i,.svtvs--rank .rk-tbar,#svt-seg){--svt-seg-gap:1.5px}
:is(.svt-loop-part-bar > i,.svt-bar-fill,.svt-pl-mini > i,.svt-cmp-bar-fill,.svt-minibar__fill,.svtvs .diffbar__fill,.svtvs .trk .fill,.svtm-pool__fill,#svt-seg){border-radius:2px!important}
:is(.svtvs--rank .rk-crit i,.svtvs--rank .rk-tbl__s i,.svtvs--rank .rk-tbar,#svt-seg)::after{border-radius:2px!important}
/* end b118 */

/* b126 (Michael: on a phone the VERSUS tab covered the row arrows). The tab is 30px wide,
   inside the 32px page gutter, so it no longer overlaps a card; button corners 4px and
   a square count badge (no pill shapes). */
@media (max-width: 768px) {
    html body #re-compare-icon-fixed,
    html body #re-compare-icon-fixed .re-compare-icon-toggle {
        border-radius: 4px 0 0 4px !important;
    }
    html body #re-compare-icon-fixed .re-compare-icon-toggle {
        gap: 8px;
        padding: 14px 3px !important;
    }
    html body #re-compare-icon-fixed .re-compare-notice {
        min-width: 20px !important;
        height: 20px !important;
        padding: 0 4px !important;
        border-radius: 4px !important;
    }
}
/* end b126 */
