/* =====================================================
 * STF Products — products.css
 * ===================================================== */

/* ─── 1. GOOGLE FONT ──────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

/* ─── 2. CONTAINER ESCAPE — reset theme wrappers ─── */

body.tax-st_products_category .page_content_wrap,
body.single-st_products .page_content_wrap {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    letter-spacing: 0 !important;
}

body.tax-st_products_category .content_wrap,
body.single-st_products .content_wrap {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
}

body.tax-st_products_category .content,
body.single-st_products .content {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

/* ─── 2b. TOP PANEL & FOOTER WRAP spacing reset ─────── */

body.tax-st_products_category .top_panel,
body.single-st_products .top_panel {
    margin-bottom: 0 !important;
}

body.tax-st_products_category .footer_wrap,
body.single-st_products .footer_wrap {
    margin-top: 0 !important;
}

/* ─── 3. PAGE WRAPPER ─────────────────────────────── */

body.tax-st_products_category .stf-products-page,
body.single-st_products .stf-products-page {
    background: #ffffff !important;
    color: #1a1a1a !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    width: 100%;
    display: block;
}

body.tax-st_products_category .stf-products-page *,
body.single-st_products .stf-products-page * {
    box-sizing: border-box;
}

/* ─── 4. INNER CONTAINER ──────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-container,
body.single-st_products .stf-products-page .stf-container {
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: 100% !important;
}

/* ─── 5. TYPOGRAPHY — force light theme colours ───── */

body.tax-st_products_category .stf-products-page h1,
body.tax-st_products_category .stf-products-page h2,
body.tax-st_products_category .stf-products-page h3,
body.tax-st_products_category .stf-products-page h4,
body.tax-st_products_category .stf-products-page h5,
body.tax-st_products_category .stf-products-page h6,
body.single-st_products .stf-products-page h1,
body.single-st_products .stf-products-page h2,
body.single-st_products .stf-products-page h3,
body.single-st_products .stf-products-page h4,
body.single-st_products .stf-products-page h5,
body.single-st_products .stf-products-page h6 {
    color: #1a1a1a !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    margin-top: 0 !important;
}

body.tax-st_products_category .stf-products-page p,
body.single-st_products .stf-products-page p {
    color: #444444 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    margin-top: 0 !important;
}

body.tax-st_products_category .stf-products-page a,
body.single-st_products .stf-products-page a {
    color: #a01818 !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page a:hover,
body.single-st_products .stf-products-page a:hover {
    color: #7d1212 !important;
    text-decoration: underline !important;
}

/* ─── 6. HERO ─────────────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-hero,
body.single-st_products .stf-products-page .stf-hero {
    position: relative;
    width: 100%;
    min-height: 340px;
    background-color: #2d2928;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
}

body.tax-st_products_category .stf-products-page .stf-hero--single,
body.single-st_products .stf-products-page .stf-hero--single {
    min-height: 260px;
}

body.tax-st_products_category .stf-products-page .stf-hero__overlay,
body.single-st_products .stf-products-page .stf-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.80) 0%, rgba(0, 0, 0, 0.25) 60%, rgba(0, 0, 0, 0.10) 100%);
    z-index: 0;
}

body.tax-st_products_category .stf-products-page .stf-hero__content,
body.single-st_products .stf-products-page .stf-hero__content {
    position: relative;
    z-index: 1;
    padding: 40px 40px 36px;
    width: 100%;
}

body.tax-st_products_category .stf-products-page .stf-hero__content h1,
body.single-st_products .stf-products-page .stf-hero__content h1 {
    color: #ffffff !important;
    font-size: clamp(1.8rem, 4vw, 3rem) !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.80) !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb li,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.80) !important;
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb a,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb a {
    color: rgba(255, 255, 255, 0.80) !important;
    text-decoration: none !important;
    font-size: 13px !important;
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb a:hover,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb li::after,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb li::after {
    content: '/';
    color: rgba(255, 255, 255, 0.45) !important;
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb li:last-child::after,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb li:last-child::after {
    content: '';
}

body.tax-st_products_category .stf-products-page .stf-hero__content .stf-breadcrumb li:last-child,
body.single-st_products .stf-products-page .stf-hero__content .stf-breadcrumb li:last-child {
    color: #ffffff !important;
    font-weight: 500 !important;
}

/* ─── 7. SECTION PADDING ──────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-section,
body.single-st_products .stf-products-page .stf-section {
    padding: 100px 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-section--sm,
body.single-st_products .stf-products-page .stf-section--sm {
    padding: 36px 0 !important;
}

/* ─── 8. CATEGORY DESCRIPTION (rich text) ─────────── */

body.tax-st_products_category .stf-products-page .stf-cat-description,
body.single-st_products .stf-products-page .stf-cat-description {
    background: #f8f7f5 !important;
    padding: 32px 0 !important;
    border-radius: 2px !important;
    color: #444444 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

/* Headings + their nested <strong> */
body.tax-st_products_category .stf-products-page .stf-cat-description h1,
body.tax-st_products_category .stf-products-page .stf-cat-description h2,
body.tax-st_products_category .stf-products-page .stf-cat-description h3,
body.tax-st_products_category .stf-products-page .stf-cat-description h4,
body.tax-st_products_category .stf-products-page .stf-cat-description h5,
body.tax-st_products_category .stf-products-page .stf-cat-description h6,
body.tax-st_products_category .stf-products-page .stf-cat-description h1 *,
body.tax-st_products_category .stf-products-page .stf-cat-description h2 *,
body.tax-st_products_category .stf-products-page .stf-cat-description h3 *,
body.tax-st_products_category .stf-products-page .stf-cat-description h4 *,
body.tax-st_products_category .stf-products-page .stf-cat-description h5 *,
body.tax-st_products_category .stf-products-page .stf-cat-description h6 *,
body.single-st_products .stf-products-page .stf-cat-description h1,
body.single-st_products .stf-products-page .stf-cat-description h2,
body.single-st_products .stf-products-page .stf-cat-description h3,
body.single-st_products .stf-products-page .stf-cat-description h4,
body.single-st_products .stf-products-page .stf-cat-description h5,
body.single-st_products .stf-products-page .stf-cat-description h6,
body.single-st_products .stf-products-page .stf-cat-description h1 *,
body.single-st_products .stf-products-page .stf-cat-description h2 *,
body.single-st_products .stf-products-page .stf-cat-description h3 *,
body.single-st_products .stf-products-page .stf-cat-description h4 *,
body.single-st_products .stf-products-page .stf-cat-description h5 *,
body.single-st_products .stf-products-page .stf-cat-description h6 * {
    color: #1a1a1a !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    background: transparent !important;
    margin-top: 16px !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description h1,
body.single-st_products .stf-products-page .stf-cat-description h1 {
    font-size: 1.6rem !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description h2,
body.single-st_products .stf-products-page .stf-cat-description h2 {
    font-size: 1.35rem !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description h3,
body.single-st_products .stf-products-page .stf-cat-description h3 {
    font-size: 1.15rem !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description h4,
body.tax-st_products_category .stf-products-page .stf-cat-description h5,
body.tax-st_products_category .stf-products-page .stf-cat-description h6,
body.single-st_products .stf-products-page .stf-cat-description h4,
body.single-st_products .stf-products-page .stf-cat-description h5,
body.single-st_products .stf-products-page .stf-cat-description h6 {
    font-size: 1rem !important;
}

/* Paragraphs */
body.tax-st_products_category .stf-products-page .stf-cat-description p,
body.single-st_products .stf-products-page .stf-cat-description p {
    color: #333333 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    margin-bottom: 14px !important;
    background: transparent !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description p:last-child,
body.single-st_products .stf-products-page .stf-cat-description p:last-child {
    margin-bottom: 0 !important;
}

/* Inline elements */
body.tax-st_products_category .stf-products-page .stf-cat-description strong,
body.tax-st_products_category .stf-products-page .stf-cat-description b,
body.single-st_products .stf-products-page .stf-cat-description strong,
body.single-st_products .stf-products-page .stf-cat-description b {
    color: #1a1a1a !important;
    font-weight: 700 !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description em,
body.tax-st_products_category .stf-products-page .stf-cat-description i,
body.single-st_products .stf-products-page .stf-cat-description em,
body.single-st_products .stf-products-page .stf-cat-description i {
    color: inherit !important;
    font-style: italic !important;
}

/* Links */
body.tax-st_products_category .stf-products-page .stf-cat-description a,
body.single-st_products .stf-products-page .stf-cat-description a {
    color: #a01818 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description a:hover,
body.single-st_products .stf-products-page .stf-cat-description a:hover {
    color: #7d1212 !important;
}

/* Lists */
body.tax-st_products_category .stf-products-page .stf-cat-description ul,
body.tax-st_products_category .stf-products-page .stf-cat-description ol,
body.single-st_products .stf-products-page .stf-cat-description ul,
body.single-st_products .stf-products-page .stf-cat-description ol {
    color: #333333 !important;
    padding-left: 22px !important;
    margin-bottom: 14px !important;
    background: transparent !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description li,
body.tax-st_products_category .stf-products-page .stf-cat-description li p,
body.single-st_products .stf-products-page .stf-cat-description li,
body.single-st_products .stf-products-page .stf-cat-description li p {
    color: #333333 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    margin-bottom: 6px !important;
    background: transparent !important;
}

/* Blockquote */
body.tax-st_products_category .stf-products-page .stf-cat-description blockquote,
body.single-st_products .stf-products-page .stf-cat-description blockquote {
    border-left: 3px solid #a01818 !important;
    margin: 16px 0 !important;
    padding: 10px 18px !important;
    color: #555555 !important;
    font-style: italic !important;
    background: rgba(160, 24, 24, 0.04) !important;
}

/* Tables */
body.tax-st_products_category .stf-products-page .stf-cat-description table,
body.single-st_products .stf-products-page .stf-cat-description table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-bottom: 16px !important;
    background: transparent !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description th,
body.tax-st_products_category .stf-products-page .stf-cat-description td,
body.single-st_products .stf-products-page .stf-cat-description th,
body.single-st_products .stf-products-page .stf-cat-description td {
    padding: 8px 12px !important;
    border: 1px solid #dddddd !important;
    color: #333333 !important;
    text-align: left !important;
    font-size: 14px !important;
    background: transparent !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-description th,
body.single-st_products .stf-products-page .stf-cat-description th {
    background: #f0eeec !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
}

/* Images */
body.tax-st_products_category .stf-products-page .stf-cat-description img,
body.single-st_products .stf-products-page .stf-cat-description img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 2px !important;
    display: block !important;
    margin: 12px 0 !important;
}

/* ─── 9. LAYOUT — sidebar + main ─────────────────── */

body.tax-st_products_category .stf-products-page .stf-layout,
body.single-st_products .stf-products-page .stf-layout {
    display: grid !important;
    grid-template-columns: 260px 1fr !important;
    grid-gap: 40px !important;
    align-items: start !important;
}

@media (max-width: 960px) {

    body.tax-st_products_category .stf-products-page .stf-layout,
    body.single-st_products .stf-products-page .stf-layout {
        grid-template-columns: 1fr !important;
    }

    body.tax-st_products_category .stf-products-page .stf-layout .stf-sidebar,
    body.single-st_products .stf-products-page .stf-layout .stf-sidebar {
        order: 2 !important;
    }

    body.tax-st_products_category .stf-products-page .stf-layout .stf-main,
    body.single-st_products .stf-products-page .stf-layout .stf-main {
        order: 1 !important;
    }
}

/* ─── 10. SIDEBAR ─────────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-widget,
body.single-st_products .stf-products-page .stf-sidebar .stf-widget {
    background: #f8f7f5 !important;
    border: 1px solid #e8e4e0 !important;
    border-radius: 4px;
    padding: 22px !important;
    margin-bottom: 24px !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-widget__title,
body.single-st_products .stf-products-page .stf-sidebar .stf-widget__title {
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: #a01818 !important;
    margin-bottom: 16px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e8e4e0 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list li,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list li {
    border-bottom: 1px solid #e8e4e0 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list li:last-child,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list li:last-child {
    border-bottom: none !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list a,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list a {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 6px !important;
    color: #333333 !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list a:hover,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list a:hover {
    color: #a01818 !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list a.stf-active,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list a.stf-active {
    color: #a01818 !important;
    font-weight: 600 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-cat-list a i,
body.single-st_products .stf-products-page .stf-sidebar .stf-cat-list a i {
    color: #a01818 !important;
    font-size: 12px !important;
    width: 14px !important;
    flex-shrink: 0 !important;
}

/* sidebar info widget */
body.tax-st_products_category .stf-products-page .stf-sidebar .stf-info-widget,
body.single-st_products .stf-products-page .stf-sidebar .stf-info-widget {
    background: #a01818 !important;
    border: none !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-info-widget *,
body.single-st_products .stf-products-page .stf-sidebar .stf-info-widget * {
    color: #ffffff !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-info-widget .stf-widget__title,
body.single-st_products .stf-products-page .stf-sidebar .stf-info-widget .stf-widget__title {
    color: #ffffff !important;
    border-bottom-color: rgba(255, 255, 255, 0.3) !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .stf-info-widget a,
body.single-st_products .stf-products-page .stf-sidebar .stf-info-widget a {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    display: block !important;
    margin-top: 8px !important;
}

/* ─── 11. CATEGORY GRID (parent categories) ───────── */

body.tax-st_products_category .stf-products-page .stf-cat-grid,
body.single-st_products .stf-products-page .stf-cat-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 24px !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-grid .stf-cat-card,
body.single-st_products .stf-products-page .stf-cat-grid .stf-cat-card {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    border-radius: 4px !important;
    background: #cccccc !important;
    aspect-ratio: 4/3 !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-grid .stf-cat-card__img,
body.single-st_products .stf-products-page .stf-cat-grid .stf-cat-card__img {
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center !important;
    transition: transform 0.5s ease !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-grid .stf-cat-card:hover .stf-cat-card__img,
body.single-st_products .stf-products-page .stf-cat-grid .stf-cat-card:hover .stf-cat-card__img {
    /* transform removed by user request */
}

body.tax-st_products_category .stf-products-page .stf-cat-grid .stf-cat-card__overlay,
body.single-st_products .stf-products-page .stf-cat-grid .stf-cat-card__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.10) 60%) !important;
    z-index: 1 !important;
}

body.tax-st_products_category .stf-products-page .stf-cat-grid .stf-cat-card__title,
body.single-st_products .stf-products-page .stf-cat-grid .stf-cat-card__title {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 2 !important;
    padding: 20px !important;
    color: #ffffff !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.3 !important;
}

/* ─── 12. PRODUCTS GRID (leaf category products) ─── */

body.tax-st_products_category .stf-products-page .stf-prod-grid,
body.single-st_products .stf-products-page .stf-prod-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 24px !important;
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card {
    border: 1px solid #e8e4e0 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    text-decoration: none !important;
    transition: border-color 0.25s ease !important;
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card:hover,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card:hover {
    border-color: #a01818 !important;
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card__img,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card__img {
    width: 100% !important;
    height: 210px !important;
    background-size: cover !important;
    background-position: center !important;
    background-color: #f0eeec !important;
    transition: transform 0.4s ease !important;
    overflow: hidden !important;
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card:hover .stf-prod-card__img,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card:hover .stf-prod-card__img {
    /* transform removed by user request */
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card__title,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card__title {
    padding: 14px 16px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    background: #ffffff !important;
    border-top: 3px solid transparent !important;
    transition: border-color 0.25s ease, color 0.25s ease !important;
    line-height: 1.35 !important;
}

body.tax-st_products_category .stf-products-page .stf-prod-grid .stf-prod-card:hover .stf-prod-card__title,
body.single-st_products .stf-products-page .stf-prod-grid .stf-prod-card:hover .stf-prod-card__title {
    border-top-color: #a01818 !important;
    color: #a01818 !important;
}

/* ─── 13. SECTION HEADING ─────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-section-heading,
body.single-st_products .stf-products-page .stf-section-heading {
    margin-bottom: 32px !important;
}

body.tax-st_products_category .stf-products-page .stf-section-heading h2,
body.single-st_products .stf-products-page .stf-section-heading h2 {
    font-size: clamp(1.4rem, 3vw, 2rem) !important;
    color: #1a1a1a !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
}

body.tax-st_products_category .stf-products-page .stf-section-heading p,
body.single-st_products .stf-products-page .stf-section-heading p {
    color: #666666 !important;
    font-size: 15px !important;
    margin: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-section-heading__line,
body.single-st_products .stf-products-page .stf-section-heading__line {
    display: block !important;
    width: 48px !important;
    height: 3px !important;
    background: #a01818 !important;
    margin-top: 14px !important;
    border-radius: 2px !important;
}

/* ─── 14. SINGLE PRODUCT — layout ────────────────── */

body.single-st_products .stf-products-page .stf-prod-detail {
    display: grid !important;
    grid-template-columns: 35% 1fr !important;
    gap: 52px !important;
    align-items: start !important;
}

@media (max-width: 768px) {
    body.single-st_products .stf-products-page .stf-prod-detail {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }
}

/* product image */
body.single-st_products .stf-products-page .stf-prod-detail__img-wrap {
    overflow: hidden !important;
    border-radius: 4px !important;
    background: #f8f7f5 !important;
    position: relative !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__img-wrap img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    cursor: crosshair !important;
    transition: transform 0.1s linear !important;
}

/* product info panel */
body.single-st_products .stf-products-page .stf-prod-detail__info h1 {
    font-size: clamp(1.5rem, 3.5vw, 2.2rem) !important;
    color: #1a1a1a !important;
    font-weight: 700 !important;
    margin-bottom: 16px !important;
    line-height: 1.2 !important;
}

/* ── Rich-text reset for product info panel ─────────────────────────────
   All properties use !important to beat _colors.css / style.css overrides. */

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content {
    color: #444444 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    background: transparent !important;
}

/* Headings + their nested <strong> */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h1,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h2,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h3,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h4,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h5,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h6,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h1 *,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h2 *,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h3 *,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h4 *,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h5 *,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h6 * {
    color: #1a1a1a !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    background: transparent !important;
    margin-top: 20px !important;
    margin-bottom: 8px !important;
    line-height: 1.3 !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h1 {
    font-size: 1.7rem !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h2 {
    font-size: 1.4rem !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h3 {
    font-size: 1.2rem !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h4,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h5,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content h6 {
    font-size: 1rem !important;
}

/* Paragraphs */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content p {
    color: #444444 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    margin-bottom: 14px !important;
    background: transparent !important;
}

/* Inline elements */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content strong,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content b {
    color: #1a1a1a !important;
    font-weight: 700 !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content em,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content i {
    color: inherit !important;
    font-style: italic !important;
}

/* Links */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content a {
    color: #a01818 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content a:hover {
    color: #7d1212 !important;
}

/* Lists */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content ul,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content ol {
    color: #444444 !important;
    padding-left: 22px !important;
    margin-bottom: 14px !important;
    background: transparent !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content li,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content li p {
    color: #444444 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    margin-bottom: 6px !important;
    background: transparent !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content li strong {
    color: #1a1a1a !important;
    font-weight: 700 !important;
}

/* HR */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content hr {
    border: none !important;
    border-top: 1px solid #e8e4e0 !important;
    margin: 20px 0 !important;
    background: transparent !important;
}

/* Blockquote */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content blockquote {
    border-left: 3px solid #a01818 !important;
    margin: 16px 0 !important;
    padding: 10px 18px !important;
    color: #555555 !important;
    font-style: italic !important;
    background: rgba(160, 24, 24, 0.04) !important;
}

/* Tables */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-bottom: 16px !important;
    background: transparent !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content th,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content td {
    padding: 8px 12px !important;
    border: 1px solid #dddddd !important;
    color: #333333 !important;
    text-align: left !important;
    font-size: 14px !important;
    background: transparent !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content th {
    background: #f0eeec !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
}

/* Images */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 2px !important;
    display: block !important;
    margin: 12px 0 !important;
}

/* Code */
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content code,
body.single-st_products .stf-products-page .stf-prod-detail__info .stf-prod-content pre {
    color: #1a1a1a !important;
    background: #f8f7f5 !important;
    font-family: monospace !important;
    font-size: 13px !important;
    padding: 2px 6px !important;
    border-radius: 3px !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-enquire-btn {
    display: inline-block !important;
    margin-top: 24px !important;
    background: #a01818 !important;
    color: #ffffff !important;
    padding: 13px 28px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 3px !important;
    text-decoration: none !important;
    letter-spacing: 0.04em !important;
}

body.single-st_products .stf-products-page .stf-prod-detail__info .stf-enquire-btn:hover {
    background: #7d1212 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* ─── 15. TABS ────────────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-tabs,
body.single-st_products .stf-products-page .stf-tabs {
    border-bottom: 2px solid #e8e4e0 !important;
    display: flex !important;
    gap: 0 !important;
    margin-bottom: 0 !important;
    flex-wrap: wrap !important;
}

body.tax-st_products_category .stf-products-page .stf-tabs .stf-tab-btn,
body.single-st_products .stf-products-page .stf-tabs .stf-tab-btn {
    background: none !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    margin-bottom: -2px !important;
    padding: 12px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #666666 !important;
    cursor: pointer !important;
    letter-spacing: 0.03em !important;
    transition: color 0.2s ease, border-color 0.2s ease !important;
}

body.tax-st_products_category .stf-products-page .stf-tabs .stf-tab-btn.stf-active,
body.single-st_products .stf-products-page .stf-tabs .stf-tab-btn.stf-active,
body.tax-st_products_category .stf-products-page .stf-tabs .stf-tab-btn:hover,
body.single-st_products .stf-products-page .stf-tabs .stf-tab-btn:hover {
    color: #a01818 !important;
    border-bottom-color: #a01818 !important;
}

body.tax-st_products_category .stf-products-page .stf-tab-panel,
body.single-st_products .stf-products-page .stf-tab-panel {
    display: none !important;
    padding: 32px 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-tab-panel.stf-active,
body.single-st_products .stf-products-page .stf-tab-panel.stf-active {
    display: block !important;
}

/* ─── 16. SPECS TABLE ─────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-specs-table,
body.single-st_products .stf-products-page .stf-specs-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 14px !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table tr,
body.single-st_products .stf-products-page .stf-specs-table tr {
    border-bottom: 1px solid #e8e4e0 !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table tr:last-child,
body.single-st_products .stf-products-page .stf-specs-table tr:last-child {
    border-bottom: none !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table td,
body.single-st_products .stf-products-page .stf-specs-table td {
    padding: 12px 14px !important;
    color: #333333 !important;
    vertical-align: top !important;
    border: none !important;
    background: none !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table td:first-child,
body.single-st_products .stf-products-page .stf-specs-table td:first-child {
    font-weight: 600 !important;
    color: #1a1a1a !important;
    width: 40% !important;
    background: #f8f7f5 !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table tr:nth-child(even) td,
body.single-st_products .stf-products-page .stf-specs-table tr:nth-child(even) td {
    background: #ffffff !important;
}

body.tax-st_products_category .stf-products-page .stf-specs-table tr:nth-child(even) td:first-child,
body.single-st_products .stf-products-page .stf-specs-table tr:nth-child(even) td:first-child {
    background: #f0eeec !important;
}

/* ─── 17. GRADES RICH TEXT ────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades p,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades p {
    color: #444444 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades h2,
body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades h3,
body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades h4,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades h2,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades h3,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades h4 {
    color: #1a1a1a !important;
}

body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades ul,
body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades ol,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades ul,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades ol {
    color: #444444 !important;
    padding-left: 22px !important;
}

body.tax-st_products_category .stf-products-page .stf-tab-panel .stf-grades li,
body.single-st_products .stf-products-page .stf-tab-panel .stf-grades li {
    color: #444444 !important;
    line-height: 1.7 !important;
    margin-bottom: 6px !important;
}

/* ─── 18. DOWNLOADS ───────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-docs-grid,
body.single-st_products .stf-products-page .stf-docs-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 20px !important;
}

body.tax-st_products_category .stf-products-page .stf-docs-grid .stf-doc-card,
body.single-st_products .stf-products-page .stf-docs-grid .stf-doc-card {
    border: 1px solid #e8e4e0 !important;
    border-radius: 4px !important;
    background: #f8f7f5 !important;
    padding: 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    text-decoration: none !important;
    color: #1a1a1a !important;
}

body.tax-st_products_category .stf-products-page .stf-docs-grid .stf-doc-card:hover,
body.single-st_products .stf-products-page .stf-docs-grid .stf-doc-card:hover {
    border-color: #a01818 !important;
    color: #a01818 !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page .stf-docs-grid .stf-doc-card i,
body.single-st_products .stf-products-page .stf-docs-grid .stf-doc-card i {
    font-size: 28px !important;
    color: #a01818 !important;
    flex-shrink: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-docs-grid .stf-doc-card span,
body.single-st_products .stf-products-page .stf-docs-grid .stf-doc-card span {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: inherit !important;
    line-height: 1.4 !important;
}

/* ─── 19. GALLERY GRID ────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-gallery-grid,
body.single-st_products .stf-products-page .stf-gallery-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 12px !important;
    margin-top: 32px !important;
}

body.tax-st_products_category .stf-products-page .stf-gallery-grid a,
body.single-st_products .stf-products-page .stf-gallery-grid a {
    display: block !important;
    overflow: hidden !important;
    border-radius: 3px !important;
    background: #f0eeec !important;
    aspect-ratio: 1 !important;
}

body.tax-st_products_category .stf-products-page .stf-gallery-grid a img,
body.single-st_products .stf-products-page .stf-gallery-grid a img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.35s ease !important;
}

body.tax-st_products_category .stf-products-page .stf-gallery-grid a:hover img,
body.single-st_products .stf-products-page .stf-gallery-grid a:hover img {
    transform: scale(1.06) !important;
}

/* ─── 20. PAGINATION ──────────────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-pagination,
body.single-st_products .stf-products-page .stf-pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 40px 0 0 !important;
    flex-wrap: wrap !important;
}

/* paginate_links() with type='list' outputs ul.page-numbers */
body.tax-st_products_category .stf-products-page .stf-pagination ul.page-numbers,
body.single-st_products .stf-products-page .stf-pagination ul.page-numbers {
    display: flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
}

body.tax-st_products_category .stf-products-page .stf-pagination ul.page-numbers li,
body.single-st_products .stf-products-page .stf-pagination ul.page-numbers li {
    display: block !important;
    margin: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-pagination a,
body.tax-st_products_category .stf-products-page .stf-pagination span,
body.single-st_products .stf-products-page .stf-pagination a,
body.single-st_products .stf-products-page .stf-pagination span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 38px !important;
    height: 38px !important;
    padding: 0 10px !important;
    border: 1px solid #e8e4e0 !important;
    border-radius: 3px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333333 !important;
    text-decoration: none !important;
    background: #ffffff !important;
}

body.tax-st_products_category .stf-products-page .stf-pagination .current,
body.tax-st_products_category .stf-products-page .stf-pagination span.current,
body.single-st_products .stf-products-page .stf-pagination .current,
body.single-st_products .stf-products-page .stf-pagination span.current {
    background: #a01818 !important;
    border-color: #a01818 !important;
    color: #ffffff !important;
}

body.tax-st_products_category .stf-products-page .stf-pagination a:hover,
body.single-st_products .stf-products-page .stf-pagination a:hover {
    border-color: #a01818 !important;
    color: #a01818 !important;
}

/* ─── 21. DIVIDER ─────────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-divider,
body.single-st_products .stf-products-page .stf-divider {
    border: none !important;
    border-top: 1px solid #e8e4e0 !important;
    margin: 0 !important;
}

/* ─── 22. SIDEBAR WIDGET (dynamic_sidebar output) ─── */
/* Override dark sidebar widget background inherited from theme        */

body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget {
    background: #f8f7f5 !important;
    color: #1a1a1a !important;
    padding: 22px !important;
    border: 1px solid #e8e4e0 !important;
    border-radius: 4px !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget h5,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget h5 {
    color: #a01818 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e8e4e0 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget .products-cats-list,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget .products-cats-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a {
    color: #333333 !important;
    padding: 10px 6px !important;
    display: block !important;
    font-size: 14px !important;
    border-bottom: 1px solid #e8e4e0 !important;
    text-decoration: none !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a:hover,
body.tax-st_products_category .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a.active,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a:hover,
body.single-st_products .stf-products-page .stf-sidebar .cat-widget .products-cats-list li a.active {
    color: #a01818 !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .info-widget,
body.single-st_products .stf-products-page .stf-sidebar .info-widget {
    background: #a01818 !important;
    padding: 28px 22px !important;
    border-radius: 4px !important;
    margin-top: 20px !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .info-widget h5,
body.tax-st_products_category .stf-products-page .stf-sidebar .info-widget p,
body.tax-st_products_category .stf-products-page .stf-sidebar .info-widget a,
body.single-st_products .stf-products-page .stf-sidebar .info-widget h5,
body.single-st_products .stf-products-page .stf-sidebar .info-widget p,
body.single-st_products .stf-products-page .stf-sidebar .info-widget span,
body.single-st_products .stf-products-page .stf-sidebar .info-widget a {
    color: #ffffff !important;
}

body.tax-st_products_category .stf-products-page .stf-sidebar .info-widget span.contact,
body.single-st_products .stf-products-page .stf-sidebar .info-widget span.contact {
    color: #ffffff !important;
    font-weight: 700 !important;
    display: block !important;
    margin-top: 6px !important;
    font-size: 14px !important;
}

/* ─── 23. BG UTILITIES ────────────────────────────── */

body.tax-st_products_category .stf-products-page .stf-bg-light,
body.single-st_products .stf-products-page .stf-bg-light {
    background: #f8f7f5 !important;
}

body.tax-st_products_category .stf-products-page .stf-bg-white,
body.single-st_products .stf-products-page .stf-bg-white {
    background: #ffffff !important;
}

/* ─── 24. RESPONSIVE ──────────────────────────────── */

@media (max-width: 768px) {

    body.tax-st_products_category .stf-products-page .stf-hero,
    body.single-st_products .stf-products-page .stf-hero {
        min-height: 240px !important;
    }

    body.tax-st_products_category .stf-products-page .stf-hero__content,
    body.single-st_products .stf-products-page .stf-hero__content {
        padding: 28px 20px 24px !important;
    }

    body.tax-st_products_category .stf-products-page .stf-cat-grid,
    body.single-st_products .stf-products-page .stf-cat-grid {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
    }

    body.tax-st_products_category .stf-products-page .stf-prod-grid,
    body.single-st_products .stf-products-page .stf-prod-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    body.tax-st_products_category .stf-products-page .stf-section,
    body.single-st_products .stf-products-page .stf-section {
        padding: 36px 0 !important;
    }

    body.tax-st_products_category .stf-products-page .stf-cat-description,
    body.single-st_products .stf-products-page .stf-cat-description {
        padding: 20px !important;
    }

    body.tax-st_products_category .stf-products-page .stf-docs-grid,
    body.single-st_products .stf-products-page .stf-docs-grid {
        grid-template-columns: 1fr !important;
    }

    body.tax-st_products_category .stf-products-page .stf-gallery-grid,
    body.single-st_products .stf-products-page .stf-gallery-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 480px) {

    body.tax-st_products_category .stf-products-page .stf-prod-grid,
    body.single-st_products .stf-products-page .stf-prod-grid {
        grid-template-columns: 1fr !important;
    }
}