/* ============================================================
   SHUA marketplace skin
   Single brand color: var(--primary-color) = #af0505 (World Champion red)
   Headings/nav: TBC Contractica CAPS (loaded in shua-fonts.css)
   ============================================================ */

:root {
    --tp-theme-primary: var(--primary-color, #af0505);
    --shua-brand: var(--primary-color, #af0505);
    --shua-brand-dark: #7d0404;
    --shua-brand-soft: #fdeaea;
    --shua-ink: #0b1b27;
    --shua-ink-2: #141f2a;
    --shua-text: #202b36;
    --shua-muted: #6b7885;
    --shua-line: #e5eaef;
    --shua-panel: #f3f5f7;
    --shua-radius: 10px;
}

/* ------------------------------------------------------------
   1. TOPBAR
------------------------------------------------------------ */

.header-top,
.header-top.space-bg {
    min-height: 32px;
    padding: 3px 0;
    background: var(--shua-ink) !important;
    color: #ffffff;
}

.header-top .header-welcome-text {
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255, 255, 255, .85);
    font-size: 11.5px;
    font-weight: 500;
}

.header-top .header-welcome-text span {
    color: rgba(255, 255, 255, .85);
}

.header-top .header-welcome-text span strong {
    font-weight: 500;
}

.header-top .header-welcome-text a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--shua-brand);
    font-size: 11.5px;
    font-weight: 700;
    white-space: nowrap;
}

.header-top .header-welcome-text a:hover {
    background: transparent;
    color: #ffffff;
}

.header-top .headertoplag,
.header-top .headertoplag a,
.header-top .headertoplag span,
.header-top .headertoplag .nice-select,
.header-top .headertoplag .nice-select .current {
    color: rgba(255, 255, 255, .85);
    font-size: 12px;
}

/* single-currency catalog site: hide the currency dropdown */
.header-top .headertoplag__lang {
    display: none;
}

.header-top .row,
.header-top .row > [class*="col-"] {
    min-height: 26px;
    display: flex;
    align-items: center;
}

.header-top .row {
    justify-content: space-between;
}

.ae-anno-announcement-wrapper,
.ae-anno-announcement__items,
.ae-anno-announcement {
    min-height: 0 !important;
}

.ae-anno-announcement__button {
    border-bottom: 0 !important;
}

.header-top .menu-top-social {
    display: inline-flex;
    align-items: center;
    gap: 2px;
}

.header-top .menu-top-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-left: 2px;
    border-radius: 50%;
    color: rgba(255, 255, 255, .9) !important;
    font-size: 12px;
}

.header-top .menu-top-social a svg,
.header-top .menu-top-social a i {
    width: 15px;
    height: 15px;
    color: rgba(255, 255, 255, .9) !important;
    stroke: rgba(255, 255, 255, .9);
}

.header-top .menu-top-social a:hover,
.header-top .menu-top-social a:hover svg,
.header-top .menu-top-social a:hover i {
    color: var(--shua-brand) !important;
    stroke: var(--shua-brand);
}

.ae-anno-announcement-wrapper {
    background: var(--shua-ink) !important;
    color: #ffffff !important;
}

.ae-anno-announcement__content.header-welcome-text {
    display: flex;
    align-items: center;
    gap: 14px;
}

.ae-anno-announcement__content .ae-anno-announcement__text span,
.ae-anno-announcement__content .ae-anno-announcement__text strong {
    color: rgba(255, 255, 255, .88);
    font-size: 12px;
    font-weight: 500;
}

.ae-anno-announcement__button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    color: var(--shua-brand) !important;
    font-size: 11.5px;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none !important;
    box-shadow: none !important;
}

.ae-anno-announcement__button::after,
.ae-anno-announcement__button::before {
    display: none !important;
}

.ae-anno-announcement__button:hover {
    background: transparent !important;
    color: #ffffff !important;
}

.ae-anno-announcement__controls {
    display: none !important;
}

/* ------------------------------------------------------------
   2. HEADER (logo + search + hotline + icons)
------------------------------------------------------------ */

.main-header {
    background: #ffffff;
}

.main-header .logo-area {
    padding: 18px 0 !important;
    background: #ffffff;
}

.logo img {
    max-height: 40px !important;
}

.header-middle__row {
    position: relative;
}

.header-middle__content {
    position: relative;
}

.header-middle__content .header-meta-info {
    min-height: 50px;
    gap: clamp(12px, 1.4vw, 24px);
    justify-content: flex-end !important;
}

.header-middle__content .header-search-bar {
    position: relative;
    z-index: 1;
    top: auto;
    left: auto;
    flex: 1 1 360px;
    width: auto;
    min-width: 0;
    max-width: 620px;
    margin: 0;
    transform: none;
}

.header-middle__content .header-hotline,
.header-middle__content .header-meta {
    position: relative;
    z-index: 2;
    flex: 0 0 auto;
}

.header-middle__content .header-hotline {
    margin-right: 0;
}

.header-search-bar {
    flex: 1;
    max-width: 780px;
    margin: 0 26px;
}

.header-search-bar .search-info {
    position: relative;
    display: flex;
    align-items: center;
    height: 48px;
    overflow: hidden;
    border: 2px solid var(--shua-brand);
    border-radius: 999px;
    background: #ffffff;
}

.header-search-bar .product-category-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 100%;
    padding: 0 16px 0 20px;
    border-right: 1px solid var(--shua-line);
    border-left: 0;
    color: var(--shua-ink);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
    flex-shrink: 0;
}

.header-search-bar .product-category-label .form-label {
    margin: 0;
    width: auto;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.header-search-bar .product-category-label i {
    font-size: 10px;
    color: var(--shua-muted);
}

.header-search-bar .product-category-select {
    position: absolute;
    left: 0;
    top: 0;
    width: 190px;
    height: 100%;
    opacity: 0;
    z-index: 10;
    cursor: pointer;
}

.header-search-bar input.input-search-product,
.header-search-bar input.input-search-product.has-category-select {
    flex: 1;
    min-width: 0;
    height: 100%;
    border: 0;
    padding: 5px 16px;
    background: transparent;
    color: var(--shua-text);
    font-size: 13px;
}

.header-search-bar input.input-search-product::placeholder {
    color: var(--shua-muted);
}

.header-search-bar .header-search-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: static;
    top: auto;
    transform: none;
    inset-inline-end: auto;
    width: 66px;
    height: 100%;
    margin: 0;
    border: 0;
    border-radius: 0 999px 999px 0;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 16px;
}

.header-search-bar .header-search-icon:hover {
    background: var(--shua-brand-dark);
}

.header-hotline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-right: 22px;
    white-space: nowrap;
}

.header-hotline__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border: 1px solid var(--shua-brand);
    border-radius: 50%;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 18px;
}

.header-hotline__info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.25;
}

.header-hotline__info small {
    margin-bottom: 2px;
    color: #7a7f87;
    font-size: 12px;
    font-weight: 500;
}

.header-hotline__info a {
    color: #4b5563;
    font-size: 17px;
    font-weight: 900;
}

.header-meta__social a,
.header-meta__social button {
    color: var(--shua-ink);
}

.header-meta__social .tp-product-count,
.header-meta__social .tp-product-compare-count,
.header-meta__social .tp-product-wishlist-count {
    background: var(--shua-brand);
    color: #ffffff;
}

/* ------------------------------------------------------------
   3. NAV ROW
------------------------------------------------------------ */

.main-header .main-menu-area {
    padding: 0 !important;
    border-top: 1px solid var(--shua-line);
    border-bottom: 1px solid var(--shua-line);
    background: #ffffff;
}

.cat-menu__category .tp-cat-toggle {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 50px;
    width: 100%;
    padding: 12px 18px;
    border-radius: 0;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
}

.cat-menu__category .tp-cat-toggle:hover {
    background: var(--shua-brand-dark);
    color: #ffffff;
}

.header-nav-row {
    gap: 22px;
}

.header-nav-row__categories {
    width: 250px;
    flex-shrink: 0;
}

.header-nav-row__menu {
    min-width: 0;
    flex: 1;
}

.header-nav-row__menu nav > ul {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 18px;
    white-space: nowrap;
}

@media (max-width: 1799px) {
    .header-utility-links {
        display: none !important;
    }
}

@media (max-width: 1399px) {
    .header-nav-row__categories {
        width: 220px;
    }

    .header-nav-row__menu nav > ul {
        gap: 10px;
    }

    .main-menu ul li a {
        font-size: 12px;
    }
}

.header-utility-links {
    flex-shrink: 0;
}

.header-nav-row__menu nav > ul > li {
    margin: 0 !important;
}

.main-menu ul li a {
    padding: 15px 0;
    color: var(--shua-ink);
    font-family: var(--shua-heading-font);
    font-size: 13px;
    font-weight: 700;
}

.mobile-menu-container a,
.mobile-menu-nav a {
    font-family: var(--shua-heading-font);
}

.main-menu ul li:hover > a,
.main-menu ul li.active > a {
    color: var(--shua-brand);
}

.header-utility-links {
    gap: 18px;
}

.header-utility-links a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--shua-muted);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.header-utility-links a i {
    color: var(--shua-brand);
    font-size: 14px;
}

.header-utility-links a:hover {
    color: var(--shua-ink);
}

/* Sticky header */
#header-sticky.logo-area {
    padding: 12px 0 !important;
    border-bottom: 1px solid var(--shua-line);
    background: #ffffff;
}

/* Category dropdown panel — full tree expanded */
.category-menu {
    width: 300px !important;
    padding: 10px 0 14px;
    border: 1px solid var(--shua-line);
    border-top: 0;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 24px 48px rgba(11, 27, 39, .14);
    max-height: 74vh;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.category-menu .cat-menu__list > li {
    border-top: 1px solid var(--shua-panel);
}

.category-menu .cat-menu__list > li:first-child {
    border-top: 0;
}

.category-menu .cat-menu__list > li > a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 20px 7px;
    color: var(--shua-ink);
    font-size: 13px;
    font-weight: 900;
}

.category-menu .cat-menu__list li .submenu,
.category-menu .cat-menu__list li:hover .submenu {
    position: static !important;
    display: block !important;
    width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    padding: 0 0 8px;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.category-menu .cat-menu__list .submenu li a {
    display: block;
    padding: 5px 20px 5px 36px;
    color: var(--shua-muted);
    font-size: 12.5px;
    font-weight: 500;
}

.category-menu .cat-menu__list li a:hover {
    color: var(--shua-brand-dark);
}

.category-menu .more-categories {
    display: none;
}

.category-menu::-webkit-scrollbar {
    width: 4px;
}

.category-menu::-webkit-scrollbar-thumb {
    background: var(--shua-line);
    border-radius: 999px;
}

.category-menu {
    scrollbar-width: thin;
    scrollbar-color: var(--shua-line) transparent;
}

/* ------------------------------------------------------------
   4. HOMEPAGE
------------------------------------------------------------ */

#page-home {
    background: #ffffff;
}

.shua-screen-home {
    color: var(--shua-text);
    padding-bottom: 10px;
}

.shua-screen-home .container {
    max-width: 1320px;
}

.shua-screen-home a {
    text-decoration: none;
}

.shua-screen-section-head,
.shua-screen-panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.shua-screen-section-head h2,
.shua-screen-panel-title h2,
.shua-screen-trending h2 {
    margin: 0;
    color: var(--shua-ink);
    font-size: 18px;
    font-weight: 900;
    line-height: 1.25;
}

.shua-screen-section-head a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--shua-muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.shua-screen-section-head a:hover {
    color: var(--shua-brand);
}

.shua-screen-section-head a i {
    font-size: 10px;
}

/* --- categories circles --- */

.shua-screen-categories {
    padding: 34px 0 10px;
}

.shua-screen-category-row {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    gap: 18px;
}

.shua-screen-category-card {
    min-width: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 12px;
    color: var(--shua-ink);
    text-align: center;
}

.shua-screen-category-icon {
    width: 92px;
    height: 92px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--shua-panel);
    transition: all .2s ease;
}

.shua-screen-category-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.shua-screen-category-icon i {
    color: var(--shua-brand);
    font-size: 30px;
}

.shua-screen-category-card strong {
    min-height: 32px;
    color: var(--shua-ink);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}

.shua-screen-category-card:hover .shua-screen-category-icon {
    background: var(--shua-brand-soft);
    outline: 2px solid var(--shua-brand);
    outline-offset: 3px;
}

.shua-screen-category-card:hover strong {
    color: var(--shua-brand-dark);
}

/* --- hero split --- */

.shua-screen-hero {
    padding: 26px 0 0;
}

.shua-screen-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 20px;
}

.shua-screen-hero-main,
.shua-screen-hero-side {
    position: relative;
    min-width: 0;
    display: block;
    overflow: hidden;
    border-radius: var(--shua-radius);
    color: #ffffff;
}

.shua-screen-hero-main {
    min-height: 440px;
    background: var(--shua-ink-2);
}

.shua-screen-hero-side {
    min-height: 440px;
    background: var(--shua-ink-2);
}

.shua-screen-hero-main img,
.shua-screen-hero-side img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.shua-screen-hero-main:hover img,
.shua-screen-hero-side:hover img {
    transform: scale(1.03);
}

.shua-screen-hero-main::after,
.shua-screen-hero-side::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(88deg, rgba(6, 16, 24, .84) 8%, rgba(6, 16, 24, .38) 52%, rgba(6, 16, 24, .05) 88%);
}

.shua-screen-hero-side::after {
    background: linear-gradient(180deg, rgba(6, 16, 24, .05) 30%, rgba(6, 16, 24, .84) 88%);
}

.shua-screen-hero-main__copy {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px 48px;
}

.shua-screen-hero-side__copy {
    position: absolute;
    z-index: 2;
    inset: auto 0 0 0;
    padding: 28px;
}

.shua-screen-hero-main__copy span,
.shua-screen-hero-side__copy span {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--shua-brand);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
}

.shua-screen-hero-main__copy h1 {
    max-width: 430px;
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 40px;
    font-weight: 900;
    line-height: 1.12;
}

.shua-screen-hero-main__copy p {
    max-width: 360px;
    margin: 0 0 28px;
    color: rgba(255, 255, 255, .8);
    font-size: 14px;
    line-height: 1.65;
}

.shua-screen-hero-side__copy h2 {
    max-width: 240px;
    margin: 0 0 16px;
    color: #ffffff;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.2;
}

.shua-screen-hero-main__copy em,
.shua-screen-hero-side__copy em,
.shua-screen-wide-banner__copy em {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: max-content;
    min-height: 46px;
    padding: 0 26px;
    border-radius: 999px;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    transition: background .2s ease;
}

.shua-screen-hero-main:hover em,
.shua-screen-hero-side:hover em,
.shua-screen-wide-banner__inner:hover em {
    background: var(--shua-brand-dark);
}

/* --- promo cards row --- */

.shua-screen-promos {
    padding: 20px 0 6px;
}

.shua-screen-promo-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.shua-screen-promo-card {
    position: relative;
    min-height: 190px;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    align-items: center;
    overflow: hidden;
    border-radius: var(--shua-radius);
    background: var(--shua-panel);
    color: var(--shua-ink);
}

.shua-screen-promo-card.is-cyan {
    background: var(--shua-brand-soft);
}

.shua-screen-promo-card.is-dark {
    background: var(--shua-ink-2);
    color: #ffffff;
}

.shua-screen-promo-card__copy {
    position: relative;
    z-index: 2;
    padding: 24px 0 24px 26px;
}

.shua-screen-promo-card__copy span {
    display: block;
    margin-bottom: 8px;
    color: var(--shua-brand-dark);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
}

.shua-screen-promo-card.is-dark .shua-screen-promo-card__copy span {
    color: var(--shua-brand);
}

.shua-screen-promo-card__copy h3 {
    margin: 0 0 6px;
    color: inherit;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.25;
}

.shua-screen-promo-card__copy p {
    margin: 0 0 14px;
    color: inherit;
    font-size: 12px;
    line-height: 1.5;
    opacity: .72;
}

.shua-screen-promo-card__copy em {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: inherit;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    border-bottom: 2px solid var(--shua-brand);
    padding-bottom: 3px;
}

.shua-screen-promo-card > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0 var(--shua-radius) var(--shua-radius) 0;
}

/* --- panels & product cards --- */

/* Shared catalog card: keep prices in flow and every grid/slider card equal. */
.bb-product-items-wrapper > .row > .col,
.related-product-active .swiper-slide,
.flash-sale-slider .swiper-slide {
    display: flex;
    height: auto;
}

.tpproduct:not(.row) {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin-bottom: 0 !important;
    padding: 14px !important;
    border: 1px solid var(--shua-line);
    border-radius: var(--shua-radius);
    background: #ffffff;
    overflow: hidden;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.tpproduct:not(.row):hover {
    border-color: transparent;
    box-shadow: 0 14px 34px rgba(11, 27, 39, .12);
}

.tpproduct:not(.row) .tpproduct__thumb {
    flex: 0 0 auto;
    width: 100%;
    height: clamp(178px, 13vw, 205px);
    margin-bottom: 0;
    padding: 10px;
    border-radius: 8px;
    background: #f7f9fb;
    overflow: hidden;
}

.tpproduct:not(.row) .tpproduct__thumb > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.tpproduct:not(.row) .tpproduct__thumb > a > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.tpproduct:not(.row) .tpproduct__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    padding-top: 14px;
}

.tpproduct:not(.row) .tpproduct__title.text-truncate {
    min-height: 42px;
    margin-bottom: 10px;
    color: var(--shua-ink);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
}

.tpproduct:not(.row) .tpproduct__priceinfo {
    position: relative;
    display: flex !important;
    align-items: center;
    gap: 10px;
    min-height: 34px;
    margin-top: auto;
}

.tpproduct:not(.row) .tpproduct__priceinfo-list,
.tpproduct:not(.row):hover .tpproduct__priceinfo-list {
    position: static;
    inset: auto;
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    opacity: 1;
    visibility: visible;
    transform: none;
}

.tpproduct:not(.row) .tpproduct__priceinfo-list .bb-product-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 8px;
    margin: 0 !important;
    font-family: var(--shua-heading-font);
    line-height: 1.35;
}

.tpproduct:not(.row) .tpproduct__priceinfo-list .product-price-sale,
.tpproduct:not(.row) .tpproduct__priceinfo-list [data-bb-value='product-price'] {
    color: var(--shua-brand-dark);
    font-size: 17px;
    font-weight: 900;
}

.tpproduct:not(.row) .tpproduct__priceinfo-list .bb-product-price-text-old,
.tpproduct:not(.row) .tpproduct__priceinfo-list .tpproduct__priceinfo-list-oldprice {
    margin-inline-start: 0;
    color: var(--shua-muted) !important;
    font-size: 13px;
    font-weight: 500;
}

.tpproduct:not(.row) .tpproduct__cart,
.tpproduct:not(.row):hover .tpproduct__cart {
    position: static;
    display: block;
    flex: 0 0 auto;
    opacity: 1;
    visibility: visible;
    transform: none;
}

.tpproduct:not(.row) .tpproduct__cart a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 84px;
    height: 34px;
    padding: 0 13px;
    border: 1px solid var(--shua-brand);
    border-radius: 999px;
    background: var(--shua-brand);
    color: #ffffff;
    font-family: var(--shua-heading-font);
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.tpproduct:not(.row) .tpproduct__cart a:hover {
    border-color: var(--shua-brand-dark);
    background: var(--shua-brand-dark);
    color: #ffffff;
}

.tpproduct:not(.row) .tpproduct__cart i {
    margin: 0;
    color: inherit;
}

.tpproduct:not(.row) .tpproduct__cart span {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: nowrap;
    border: 0;
}

.cross-sale-product.tpproduct .tpproduct__content > .small {
    margin-top: auto;
}

@media (max-width: 767px) {
    .tpproduct:not(.row) {
        padding: 10px !important;
    }

    .tpproduct:not(.row) .tpproduct__thumb {
        height: clamp(136px, 39vw, 168px);
        padding: 8px;
    }

    .tpproduct:not(.row) .tpproduct__content {
        padding-top: 11px;
    }

    .tpproduct:not(.row) .tpproduct__title.text-truncate {
        min-height: 39px;
        margin-bottom: 8px;
        font-size: 13px;
        line-height: 1.5;
    }

    .tpproduct:not(.row) .tpproduct__priceinfo-list .product-price-sale,
    .tpproduct:not(.row) .tpproduct__priceinfo-list [data-bb-value='product-price'] {
        font-size: 14px;
    }

    .tpproduct:not(.row) .tpproduct__priceinfo-list .bb-product-price-text-old,
    .tpproduct:not(.row) .tpproduct__priceinfo-list .tpproduct__priceinfo-list-oldprice {
        font-size: 11px;
    }

    .tpproduct:not(.row) .tpproduct__cart a {
        width: 32px;
        height: 32px;
    }
}

.shua-screen-weekly,
.shua-screen-trending,
.shua-screen-best,
.shua-screen-brand-banners,
.shua-screen-suggest,
.shua-screen-feature-split,
.shua-screen-landing,
.shua-screen-wide-banner {
    padding: 26px 0;
}

.shua-screen-panel {
    padding: 28px;
    border-radius: 16px;
    background: var(--shua-panel);
}

.shua-screen-panel-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.shua-screen-panel-chips span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 0 16px;
    border-radius: 999px;
    background: #ffffff;
    color: var(--shua-text);
    font-size: 12px;
    font-weight: 700;
}

.shua-screen-panel-chips span.is-accent {
    background: var(--shua-brand);
    color: #ffffff;
}

.shua-screen-deals-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.shua-screen-product-card {
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 14px;
    border: 1px solid var(--shua-line);
    border-radius: var(--shua-radius);
    background: #ffffff;
    color: var(--shua-ink);
    transition: box-shadow .2s ease, border-color .2s ease;
}

.shua-screen-product-card:hover {
    border-color: transparent;
    box-shadow: 0 14px 34px rgba(11, 27, 39, .12);
}

.shua-screen-product-feature {
    grid-row: auto;
    padding: 14px;
}

.shua-screen-badge {
    align-self: flex-start;
    margin-bottom: 10px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--shua-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1.35;
}

.shua-screen-badge.is-dark {
    padding: 4px 11px;
    border-radius: 4px;
    background: var(--shua-ink);
    color: #ffffff;
}

.shua-screen-badge.is-new {
    padding: 4px 11px;
    border-radius: 4px;
    background: var(--shua-brand-soft);
    color: var(--shua-brand-dark);
}

.shua-screen-product-img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: clamp(178px, 13vw, 205px);
    margin-bottom: 12px;
    border-radius: 8px;
    background: #f7f9fb;
    overflow: hidden;
}

.shua-screen-product-feature .shua-screen-product-img {
    height: clamp(178px, 13vw, 205px);
}

.shua-screen-product-img img {
    max-width: 88%;
    max-height: 88%;
    object-fit: contain;
    transition: transform .35s ease;
}

.shua-screen-product-card:hover .shua-screen-product-img img {
    transform: scale(1.05);
}

.shua-screen-product-card small {
    display: block;
    margin-bottom: 6px;
    color: var(--shua-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
}

.shua-screen-product-card h3 {
    min-height: 38px;
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.shua-screen-product-feature h3 {
    min-height: 0;
    font-size: 17px;
}

.shua-screen-product-card h3 a {
    color: var(--shua-ink);
}

.shua-screen-product-card h3 a:hover {
    color: var(--shua-brand-dark);
}

.shua-screen-product-card strong {
    margin-top: auto;
    color: var(--shua-brand-dark);
    font-size: 13px;
    font-weight: 900;
}

.shua-screen-card-link {
    width: max-content;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin-top: 10px;
    padding: 0 14px;
    border-radius: 999px;
    background: var(--shua-brand-soft);
    color: var(--shua-brand-dark);
    font-size: 11px;
    font-weight: 700;
    transition: all .2s ease;
}

.shua-screen-card-link:hover {
    background: var(--shua-brand);
    color: #ffffff;
}

.shua-screen-card-action {
    justify-content: center;
    min-width: 84px;
    border: 1px solid var(--shua-brand);
    background: var(--shua-brand);
    color: #ffffff;
    font-family: var(--shua-heading-font);
    font-weight: 800;
    text-decoration: none;
}

.shua-screen-card-action:hover {
    border-color: var(--shua-brand-dark);
    background: var(--shua-brand-dark);
}

.shua-screen-panel-action {
    display: flex;
    justify-content: center;
    margin-top: 24px;
}

.shua-screen-panel-action a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 0 30px;
    border: 2px solid var(--shua-ink);
    border-radius: 999px;
    background: transparent;
    color: var(--shua-ink);
    font-size: 13px;
    font-weight: 700;
    transition: all .2s ease;
}

.shua-screen-panel-action a:hover {
    border-color: var(--shua-brand);
    background: var(--shua-brand);
    color: #ffffff;
}

/* --- trending --- */

.shua-screen-trending h2 {
    margin-bottom: 16px;
}

.shua-screen-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.shua-screen-chip-row a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 18px;
    border: 1px solid var(--shua-line);
    border-radius: 999px;
    background: #ffffff;
    color: var(--shua-text);
    font-size: 12px;
    font-weight: 700;
    transition: all .2s ease;
}

.shua-screen-chip-row a i {
    color: var(--shua-muted);
    font-size: 11px;
}

.shua-screen-chip-row a:hover {
    border-color: var(--shua-brand);
    background: var(--shua-brand-soft);
    color: var(--shua-brand-dark);
}

.shua-screen-chip-row a:hover i {
    color: var(--shua-brand-dark);
}

/* --- wide dark banner --- */

.shua-screen-wide-banner__inner {
    position: relative;
    min-height: 240px;
    display: block;
    overflow: hidden;
    border-radius: var(--shua-radius);
    background: var(--shua-ink-2);
    color: #ffffff;
}

.shua-screen-wide-banner__inner img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
}

.shua-screen-wide-banner__inner::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(90deg, rgba(6, 16, 24, .88) 18%, rgba(6, 16, 24, .5) 55%, rgba(6, 16, 24, .06) 90%);
}

.shua-screen-wide-banner__copy {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 240px;
    max-width: 520px;
    padding: 30px 48px;
}

.shua-screen-wide-banner__copy span {
    margin-bottom: 10px;
    color: var(--shua-brand);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
}

.shua-screen-wide-banner__copy h2 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 30px;
    font-weight: 900;
    line-height: 1.18;
}

.shua-screen-wide-banner__copy p {
    margin: 0 0 22px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
}

/* --- tabs --- */

.shua-screen-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-bottom: 16px;
}

.shua-screen-tabs button {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 1px 7px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--shua-text);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.25;
    transition: color .2s ease;
}

.shua-screen-tabs button::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: transparent;
    content: "";
    transform: scaleX(.35);
    transition: background-color .2s ease, transform .2s ease;
}

.shua-screen-tabs button:hover {
    color: var(--shua-brand-dark);
}

.shua-screen-tabs button.active {
    background: transparent;
    color: var(--shua-brand);
}

.shua-screen-tabs button.active::after {
    background: var(--shua-brand);
    transform: scaleX(1);
}

/* --- product grids --- */

.shua-screen-product-row,
.shua-screen-suggest-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.shua-screen-landing-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* --- series / brand cards --- */

.shua-screen-banner-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.shua-screen-brand-card {
    position: relative;
    min-height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding: 26px;
    border-radius: var(--shua-radius);
    background: var(--shua-ink-2);
    color: #ffffff;
}

.shua-screen-brand-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.shua-screen-brand-card:hover img {
    transform: scale(1.04);
}

.shua-screen-brand-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(180deg, rgba(6, 16, 24, .04) 25%, rgba(6, 16, 24, .85) 92%);
}

.shua-screen-brand-card span,
.shua-screen-brand-card h3,
.shua-screen-brand-card em {
    position: relative;
    z-index: 2;
}

.shua-screen-brand-card span {
    margin-bottom: 6px;
    color: var(--shua-brand);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
}

.shua-screen-brand-card h3 {
    max-width: 84%;
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 19px;
    font-weight: 900;
    line-height: 1.3;
}

.shua-screen-brand-card em {
    display: inline-flex;
    align-items: center;
    width: max-content;
    min-height: 36px;
    padding: 0 20px;
    border-radius: 999px;
    background: #ffffff;
    color: var(--shua-ink);
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    transition: all .2s ease;
}

.shua-screen-brand-card:hover em {
    background: var(--shua-brand);
    color: #ffffff;
}

/* --- feature spotlight --- */

.shua-screen-split-grid {
    display: grid;
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
    gap: 20px;
    align-items: stretch;
}

.shua-screen-showcase-card {
    display: flex;
    flex-direction: column;
    padding: 30px;
    border: 1px solid var(--shua-line);
    border-radius: 16px;
    background: linear-gradient(160deg, #ffffff 0%, var(--shua-panel) 100%);
}

.shua-screen-showcase-card__head span {
    display: block;
    margin-bottom: 10px;
    color: var(--shua-brand-dark);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .1em;
}

.shua-screen-showcase-card__head h2 {
    margin: 0 0 8px;
    color: var(--shua-ink);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.25;
}

.shua-screen-showcase-card__head strong {
    display: block;
    margin-bottom: 12px;
    color: var(--shua-brand-dark);
    font-size: 14px;
    font-weight: 900;
}

.shua-screen-showcase-card__img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    min-height: 300px;
    margin-bottom: 16px;
}

.shua-screen-showcase-card__img img {
    max-width: 100%;
    max-height: 340px;
    object-fit: contain;
    transition: transform .35s ease;
}

.shua-screen-showcase-card__img:hover img {
    transform: scale(1.04);
}

.shua-screen-showcase-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: max-content;
    min-height: 46px;
    padding: 0 28px;
    border-radius: 999px;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
}

.shua-screen-showcase-card__cta:hover {
    background: var(--shua-brand-dark);
    color: #ffffff;
}

.shua-screen-speakers {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.shua-screen-mini-products {
    display: grid;
    flex: 1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.shua-screen-mini-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--shua-line);
    border-radius: var(--shua-radius);
    background: #ffffff;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.shua-screen-mini-card:hover {
    border-color: transparent;
    box-shadow: 0 14px 34px rgba(11, 27, 39, .12);
}

.shua-screen-mini-card > img {
    width: 104px;
    height: 92px;
    object-fit: contain;
    border-radius: 8px;
    background: #f7f9fb;
}

.shua-screen-mini-card__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.shua-screen-mini-card__body span {
    color: var(--shua-muted);
    font-size: 11px;
    font-weight: 700;
}

.shua-screen-mini-card__body strong {
    color: var(--shua-ink);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.shua-screen-mini-card__body em {
    color: var(--shua-brand-dark);
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

/* --- landing + news/review --- */

.shua-screen-landing {
    padding-bottom: 40px;
}

.shua-screen-bottom-cards {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    margin-top: 26px;
}

.shua-screen-news-card,
.shua-screen-review-card {
    padding: 26px;
    border-radius: 16px;
    background: var(--shua-panel);
}

.shua-screen-news-card .shua-screen-section-head {
    margin-bottom: 8px;
}

.shua-screen-news-card > a {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    padding: 14px 0;
    border-top: 1px solid rgba(11, 27, 39, .08);
    color: var(--shua-ink);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

.shua-screen-news-card > a:first-of-type {
    border-top: 0;
}

.shua-screen-news-card img {
    width: 120px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
}

.shua-screen-news-card > a:hover span {
    color: var(--shua-brand-dark);
}

.shua-screen-review-card {
    display: flex;
    flex-direction: column;
}

.shua-screen-stars {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 14px;
    color: var(--shua-brand);
}

.shua-screen-stars strong {
    margin-left: 10px;
    color: var(--shua-ink);
    font-size: 16px;
    font-weight: 900;
}

.shua-screen-review-card p {
    margin: 0 0 20px;
    color: var(--shua-text);
    font-size: 14px;
    line-height: 1.7;
}

.shua-screen-review-card__author {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: auto;
}

.shua-screen-review-card__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--shua-brand);
    color: #ffffff;
    font-size: 18px;
}

.shua-screen-review-card__author strong {
    display: block;
    color: var(--shua-ink);
    font-size: 13px;
}

.shua-screen-review-card__author small {
    color: var(--shua-muted);
    font-size: 11px;
}

.shua-screen-review-card__author > a {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 20px;
    border-radius: 999px;
    background: var(--shua-ink);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
}

.shua-screen-review-card__author > a:hover {
    background: var(--shua-brand);
    color: #ffffff;
}

/* ------------------------------------------------------------
   4a. PRODUCT DETAIL GALLERY
------------------------------------------------------------ */

.single-product .tpproduct-details__nab.product-gallery-vertical {
    display: flex;
    flex-direction: row-reverse;
    gap: 16px;
}

.single-product .tpproduct-details__nab .product-gallery__wrapper {
    flex: 1 1 auto !important;
    width: calc(100% - 96px) !important;
    max-width: calc(100% - 96px);
    min-width: 0;
    overflow: hidden;
    border: 1px solid #edf2f5;
    border-radius: 12px;
    background: #ffffff;
}

.single-product .tpproduct-details__nab .product-gallery__wrapper .slick-slide {
    height: auto;
}

.single-product .tpproduct-details__nab .product-gallery__wrapper a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 520px;
    padding: 18px;
}

.single-product .tpproduct-details__nab .product-gallery__wrapper img {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: contain;
}

.single-product .product-thumbnails {
    width: 80px;
    flex-shrink: 0;
}

.single-product .product-thumbnails img {
    width: 80px;
    height: 80px;
    padding: 6px;
    border: 1px solid var(--shua-line);
    border-radius: 8px;
    background: #ffffff;
    cursor: pointer;
    object-fit: contain;
}

.single-product .product-thumbnails .slick-current img {
    border-color: var(--shua-brand);
}

.single-product .tpproduct-details__pera p {
    color: var(--shua-muted);
    font-family: var(--shua-body-font);
    font-size: 15px;
    line-height: 1.75;
}

.single-product .product-details-area {
    padding-top: 18px;
}

.single-product .tpproduct-details__navtab {
    margin-bottom: 46px !important;
}

.single-product .tpproduct-details__nav {
    margin-bottom: 24px !important;
    border-bottom: 1px solid var(--shua-line);
}

.single-product .pro-details-nav-btn {
    gap: 10px;
    border: 0;
}

.single-product .pro-details-nav-btn .nav-links {
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 8px 8px 0 0;
    color: var(--shua-muted);
    font-family: var(--shua-heading-font);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
}

.single-product .pro-details-nav-btn .nav-links.active {
    border-color: var(--shua-line);
    border-bottom-color: #ffffff;
    background: #ffffff;
    color: var(--shua-brand-dark);
}

.single-product .tp-content-tab {
    color: var(--shua-text);
}

.single-product .ck-content {
    max-width: 1120px;
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 15px;
    line-height: 1.75;
}

.single-product .ck-content > *:first-child {
    margin-top: 0;
}

.single-product .ck-content p {
    margin: 0 0 16px;
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 15px;
    line-height: 1.75;
}

.single-product .ck-content > p:first-child {
    display: inline-flex;
    max-width: 100%;
    margin-bottom: 18px;
    padding: 10px 14px;
    border: 1px solid var(--shua-line);
    border-radius: 8px;
    background: #f7fafb;
    color: var(--shua-muted);
    font-size: 14px;
}

.single-product .ck-content h2,
.single-product .ck-content h3,
.single-product .ck-content h4 {
    margin: 28px 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--shua-line);
    color: var(--shua-ink);
    font-family: var(--shua-heading-font);
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.25;
}

.single-product .ck-content ul {
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
}

.single-product .ck-content > ul:first-of-type {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 2px;
}

.single-product .ck-content > ul:first-of-type li {
    min-width: 0;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid var(--shua-line);
    border-radius: 8px;
    background: #ffffff;
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 14px;
    line-height: 1.45;
}

.single-product .ck-content > ul:first-of-type li strong {
    display: block;
    margin-bottom: 3px;
    color: var(--shua-ink);
    font-family: var(--shua-heading-font);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0;
}

.single-product .ck-content ul:not(:first-of-type) {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.single-product .ck-content ul:not(:first-of-type) li {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 10px 12px 10px 34px;
    border: 1px solid var(--shua-line);
    border-radius: 8px;
    background: #ffffff;
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 14px;
    line-height: 1.45;
}

.single-product .ck-content ul:not(:first-of-type) li::before {
    position: absolute;
    top: 15px;
    left: 14px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--shua-brand);
    content: "";
}

.single-product .ck-content table,
.single-product .tp-product-details-additional-info table {
    width: 100%;
    margin: 12px 0 28px;
    overflow: hidden;
    border: 1px solid var(--shua-line);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
    background: #ffffff;
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 14px;
    line-height: 1.55;
}

.single-product .ck-content table tr:not(:last-child) th,
.single-product .ck-content table tr:not(:last-child) td,
.single-product .tp-product-details-additional-info table tr:not(:last-child) th,
.single-product .tp-product-details-additional-info table tr:not(:last-child) td {
    border-bottom: 1px solid var(--shua-line);
}

.single-product .ck-content table th,
.single-product .ck-content table td,
.single-product .tp-product-details-additional-info table th,
.single-product .tp-product-details-additional-info table td {
    padding: 13px 16px;
    vertical-align: top;
}

.single-product .ck-content table th,
.single-product .tp-product-details-additional-info table td:first-child,
.single-product .tp-product-details-additional-info table th {
    width: 34%;
    background: #f7fafb;
    color: var(--shua-ink);
    font-family: var(--shua-heading-font);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0;
    text-align: left;
}

.single-product .ck-content table td,
.single-product .tp-product-details-additional-info table td:last-child {
    color: var(--shua-text);
    font-family: var(--shua-body-font);
    font-size: 14px;
    font-weight: 500;
}

/* content images never overflow */
.tpproduct-details__pera img,
.tpproduct-details__content img,
.blog-details img,
.post-content img,
.shua-page img,
.page-content img,
.ck-content img {
    max-width: 100% !important;
    height: auto !important;
}

/* ------------------------------------------------------------
   4b. CONTENT PAGES (.shua-page)
------------------------------------------------------------ */

.shua-page {
    max-width: 860px;
    margin: 0 auto;
    padding: 10px 0 30px;
    color: var(--shua-text);
}

.shua-page__hero {
    width: 100%;
    max-height: 420px;
    object-fit: cover;
    border-radius: var(--shua-radius);
    margin-bottom: 30px;
}

.shua-page h2 {
    margin: 0 0 16px;
    color: var(--shua-ink);
    font-size: 28px;
    font-weight: 900;
    line-height: 1.25;
}

.shua-page h3 {
    margin: 26px 0 12px;
    color: var(--shua-ink);
    font-size: 19px;
    font-weight: 900;
}

.shua-page p {
    margin: 0 0 14px;
    font-size: 14px;
    line-height: 1.75;
}

.shua-page ul {
    margin: 0 0 14px;
    padding-left: 20px;
}

.shua-page ul li {
    margin-bottom: 8px;
    font-size: 14px;
    line-height: 1.6;
    list-style: disc;
}

.shua-page a:not(.shua-screen-showcase-card__cta) {
    color: var(--shua-brand-dark);
    font-weight: 700;
}

/* ------------------------------------------------------------
   4c. AUTH: compact login and registration cards
------------------------------------------------------------ */

#page-auth main > .pt-80.pb-80 {
    padding-top: 32px !important;
    padding-bottom: 40px !important;
}

#page-auth .track-area > .container > .row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#page-auth .auth-card {
    border: 1px solid var(--shua-line) !important;
    border-radius: 12px;
    background: #ffffff !important;
    box-shadow: 0 16px 42px rgba(11, 27, 39, .07);
    overflow: hidden;
}

#page-auth .auth-card__header {
    padding: 30px 32px 0 !important;
}

#page-auth .auth-card__body {
    padding: 18px 32px 32px !important;
}

#page-auth .auth-card__header-icon {
    padding: 10px !important;
}

#page-auth .auth-card__header-title {
    color: var(--shua-ink);
    font-family: var(--shua-heading-font);
    font-weight: 900;
}

#page-auth .auth-card__header-description {
    max-width: 470px;
    font-size: 13px;
    line-height: 1.65;
}

#page-auth .auth-card form .form-control {
    height: 52px;
    padding: 9px 48px;
    border: 1px solid var(--shua-line);
    border-radius: 8px;
    background: #f7f9fb;
}

#page-auth .auth-card form .form-control:focus {
    border-color: var(--shua-brand);
    background: #ffffff;
}

#page-auth .auth-card form .auth-input-icon {
    top: 8px;
}

#page-auth .auth-card form .input-password-toggle {
    padding: 14px 15px;
}

#page-auth .auth-card .mb-3 {
    margin-bottom: 14px !important;
}

#page-auth .auth-card .tptrack__submition {
    min-height: 54px;
    padding: 13px 20px;
    border-radius: 8px;
}

@media (max-width: 767px) {
    #page-auth main > .pt-80.pb-80 {
        padding-top: 20px !important;
        padding-bottom: 28px !important;
    }

    #page-auth .auth-card__header {
        padding: 22px 18px 0 !important;
    }

    #page-auth .auth-card__body {
        padding: 16px 18px 24px !important;
    }

    #page-auth .auth-card__header .gap-3 {
        gap: 10px !important;
    }

    #page-auth .auth-card__header-description {
        font-size: 12px;
        line-height: 1.6;
    }
}

/* ------------------------------------------------------------
   5. SUBSCRIBE STRIP (site-wide, above footer)
------------------------------------------------------------ */

.shua-subscribe-strip {
    padding: 34px 0;
    background: var(--shua-brand);
    color: #ffffff;
}

.shua-subscribe-strip__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
}

.shua-subscribe-strip h2 {
    margin: 0;
    color: #ffffff;
    font-size: 24px;
    font-weight: 900;
}

.shua-subscribe-strip h2 span {
    color: var(--shua-ink);
}

.shua-subscribe-strip__form {
    width: min(480px, 100%);
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px;
    border-radius: 999px;
    background: #ffffff;
}

.shua-subscribe-strip__form input {
    min-width: 0;
    flex: 1;
    height: 40px;
    border: 0;
    outline: none;
    padding: 0 16px;
    background: transparent;
    color: var(--shua-ink);
    font-size: 13px;
}

.shua-subscribe-strip__form button {
    height: 40px;
    border: 0;
    border-radius: 999px;
    padding: 0 24px;
    background: var(--shua-ink);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    transition: background .2s ease;
}

.shua-subscribe-strip__form button:hover {
    background: var(--shua-ink-2);
}

/* ------------------------------------------------------------
   6. USP STRIP
------------------------------------------------------------ */

.shua-usp-strip {
    padding: 26px 0;
    background: #ffffff;
    border-bottom: 1px solid var(--shua-line);
}

.shua-usp-strip__row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.shua-usp-strip__item {
    display: flex;
    align-items: center;
    gap: 14px;
}

.shua-usp-strip__item + .shua-usp-strip__item {
    border-left: 1px solid var(--shua-line);
    padding-left: 18px;
}

.shua-usp-strip__item i {
    color: var(--shua-brand);
    font-size: 28px;
}

.shua-usp-strip__item strong {
    display: block;
    color: var(--shua-ink);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.3;
}

.shua-usp-strip__item span {
    color: var(--shua-muted);
    font-size: 12px;
}

/* ------------------------------------------------------------
   7. FOOTER
------------------------------------------------------------ */

.footer-area {
    border-top: 1px solid var(--shua-line);
}

.footer-area .main-footer .row {
    justify-content: space-between;
    row-gap: 26px;
}

.footer-area .main-footer .row > .col-lg-3 {
    max-width: 340px;
}

.footer-area .main-footer .row > .col-lg-2 {
    width: auto;
    min-width: 168px;
    flex: 0 0 auto;
}

.footer-area .footer-widget.ml-30 {
    margin-left: 0 !important;
}

.footer-area .footer-widget__title {
    color: var(--shua-ink);
    font-size: 15px;
    font-weight: 900;
    margin-bottom: 22px !important;
    text-decoration: none;
}

.footer-area .footer-logo img {
    max-height: 36px;
    object-fit: contain;
}

.footer-widget__links ul li {
    margin-bottom: 10px;
}

/* CTA band above copyright */
.footer-area .footer-cta {
    margin-top: 6px;
    padding-top: 26px;
    padding-bottom: 10px !important;
    border-top: 1px solid var(--shua-line);
}

.footer-cta__contact {
    display: flex;
    align-items: center;
    gap: 14px;
}

.footer-cta__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--shua-brand-soft);
}

.footer-cta__icon i {
    color: var(--shua-brand-dark);
    font-size: 20px;
}

.footer-cta__text span {
    display: block;
    color: var(--shua-muted);
    font-size: 13px;
    line-height: 1.55;
}

.footer-cta__source {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    text-align: right;
}

.footer-cta__source-title {
    margin: 0 0 4px;
    color: var(--shua-ink);
    font-size: 15px;
    font-weight: 900;
}

.footer-cta__source-content p {
    margin: 0;
    color: var(--shua-muted);
    font-size: 12.5px;
    line-height: 1.55;
    max-width: 420px;
}

/* copyright bar */
.footer-copyright {
    padding: 16px 0;
}

.footer-copyright .row {
    justify-content: center;
}

.footer-copyright .row > [class*="col-"] {
    width: auto;
    flex: 0 0 auto;
}

.footer-copyright__content {
    justify-content: center;
    text-align: center;
    color: var(--shua-muted);
    font-size: 12.5px;
}

.footer-area .footer-content {
    color: var(--shua-muted);
    font-size: 13px;
    line-height: 1.7;
}

.footer-hotline {
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer-hotline i {
    color: var(--shua-brand);
    font-size: 16px;
}

.footer-hotline a {
    color: var(--shua-ink);
    font-size: 15px;
    font-weight: 900;
}

.footer-social {
    display: flex;
    gap: 8px;
}

.footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--shua-line);
    border-radius: 50%;
    color: var(--shua-text);
    font-size: 14px;
    transition: all .2s ease;
}

.footer-social a:hover {
    border-color: var(--shua-brand);
    background: var(--shua-brand);
    color: #ffffff;
}

.footer-widget__links ul li a {
    font-size: 13px;
    color: var(--shua-muted);
}

.footer-widget__links ul li a:hover {
    color: var(--shua-brand-dark);
}

.footer-cta__icon i {
    color: var(--shua-brand);
}

.footer-copyright {
    font-size: 12px;
}

/* ------------------------------------------------------------
   8. RESPONSIVE
------------------------------------------------------------ */

@media (max-width: 1399px) {
    .header-middle__content .header-search-bar {
        width: auto;
        max-width: 460px;
    }

    .header-hotline {
        gap: 8px;
        margin-right: 14px;
    }

    .header-hotline__icon {
        width: 44px;
        height: 44px;
        font-size: 16px;
    }

    .header-hotline__info small {
        font-size: 10px;
    }

    .header-hotline__info a {
        font-size: 14px;
    }

    .shua-screen-category-row {
        grid-template-columns: repeat(10, minmax(0, 1fr));
        gap: 12px;
    }

    .shua-screen-category-icon {
        width: 80px;
        height: 80px;
    }

    .shua-screen-product-row,
    .shua-screen-suggest-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .shua-screen-landing-row {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .header-search-bar {
        max-width: 560px;
    }
}

@media (max-width: 1199px) {
    .shua-screen-category-row {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .shua-screen-hero-grid {
        grid-template-columns: 1fr;
    }

    .shua-screen-hero-main,
    .shua-screen-hero-side {
        min-height: 340px;
    }

    .shua-screen-promo-row,
    .shua-screen-banner-row {
        grid-template-columns: 1fr;
    }

    .shua-screen-deals-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .shua-screen-product-feature {
        grid-row: span 1;
    }

    .shua-screen-product-row,
    .shua-screen-suggest-grid,
    .shua-screen-landing-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .shua-screen-split-grid,
    .shua-screen-bottom-cards {
        grid-template-columns: 1fr;
    }

    .shua-usp-strip__row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .shua-usp-strip__item + .shua-usp-strip__item {
        border-left: 0;
        padding-left: 0;
    }
}

@media (max-width: 991px) {
    .header-top {
        display: none;
    }
}

@media (max-width: 767px) {
    .shua-screen-section-head,
    .shua-screen-panel-title,
    .shua-subscribe-strip__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .shua-screen-best .shua-screen-section-head,
    .shua-screen-suggest .shua-screen-section-head {
        align-items: center;
        flex-direction: row;
        gap: 10px;
        margin-bottom: 12px;
    }

    .shua-screen-section-head h2,
    .shua-screen-panel-title h2,
    .shua-screen-trending h2 {
        font-size: 15px;
    }

    .shua-screen-section-head a {
        gap: 5px;
        font-size: 9.5px;
    }

    .shua-screen-tabs {
        flex-wrap: nowrap;
        gap: 15px;
        margin-bottom: 13px;
        padding-bottom: 1px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .shua-screen-tabs::-webkit-scrollbar {
        display: none;
    }

    .shua-screen-tabs button {
        flex: 0 0 auto;
        min-height: 27px;
        padding-bottom: 6px;
        font-size: 9.5px;
        white-space: nowrap;
    }

    .shua-screen-categories {
        padding: 14px 0 4px;
    }

    .shua-screen-categories .shua-screen-section-head {
        display: none;
    }

    .shua-screen-category-row {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 10px;
        margin: 0 -12px;
        padding: 4px 12px 12px;
        scroll-padding-inline: 12px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .shua-screen-category-card {
        flex: 0 0 78px;
        width: 78px;
        gap: 8px;
        scroll-snap-align: start;
    }

    .shua-screen-category-row::-webkit-scrollbar {
        display: none;
    }

    .shua-screen-category-icon {
        flex: 0 0 58px;
        width: 58px;
        height: 58px;
    }

    .shua-screen-category-icon i {
        font-size: 22px;
        line-height: 1;
    }

    .shua-screen-category-card strong {
        display: -webkit-box;
        width: 100%;
        min-height: 28px;
        overflow: hidden;
        color: var(--shua-ink);
        font-size: 11px;
        line-height: 1.25;
        text-align: center;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow-wrap: anywhere;
    }

    .shua-screen-hero-main,
    .shua-screen-hero-side {
        min-height: 280px;
    }

    .shua-screen-hero-main__copy {
        padding: 24px;
    }

    .shua-screen-hero-main__copy h1 {
        font-size: 28px;
    }

    .shua-screen-panel {
        padding: 18px;
    }

    .shua-screen-deals-grid,
    .shua-screen-product-row,
    .shua-screen-suggest-grid,
    .shua-screen-landing-row {
        display: flex;
        grid-template-columns: none;
        flex-wrap: nowrap;
        gap: 12px;
        margin: 0 -12px;
        padding: 2px 12px 14px;
        overflow-x: auto;
        scroll-padding-inline: 12px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .shua-screen-deals-grid::-webkit-scrollbar,
    .shua-screen-product-row::-webkit-scrollbar,
    .shua-screen-suggest-grid::-webkit-scrollbar,
    .shua-screen-landing-row::-webkit-scrollbar {
        display: none;
    }

    .shua-screen-deals-grid > .shua-screen-product-card,
    .shua-screen-product-row > .shua-screen-product-card,
    .shua-screen-suggest-grid > .shua-screen-product-card,
    .shua-screen-landing-row > .shua-screen-product-card {
        flex: 0 0 min(74vw, 250px);
        width: min(74vw, 250px);
        scroll-snap-align: start;
    }

    .shua-screen-product-feature {
        grid-row: auto;
        padding: 14px;
    }

    .shua-screen-product-feature .shua-screen-product-img {
        height: clamp(178px, 13vw, 205px);
    }

    .shua-screen-product-feature h3 {
        min-height: 38px;
        font-size: 13px;
    }

    .shua-screen-mini-products {
        display: flex;
        grid-template-columns: none;
        flex-wrap: nowrap;
        gap: 12px;
        margin: 0 -12px;
        padding: 2px 12px 14px;
        overflow-x: auto;
        scroll-padding-inline: 12px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .shua-screen-mini-products::-webkit-scrollbar {
        display: none;
    }

    .shua-screen-mini-card {
        flex: 0 0 min(78vw, 300px);
        width: min(78vw, 300px);
        scroll-snap-align: start;
    }

    .shua-screen-promo-card {
        min-height: 160px;
    }

    .shua-screen-wide-banner__copy {
        padding: 26px;
    }

    .shua-screen-wide-banner__copy h2 {
        font-size: 23px;
    }

    .shua-usp-strip__row {
        grid-template-columns: 1fr;
    }

    .shua-subscribe-strip h2 {
        font-size: 19px;
    }

    .shua-subscribe-strip__form {
        border-radius: 14px;
        flex-direction: column;
        align-items: stretch;
        padding: 10px;
    }

    .shua-screen-review-card__author {
        flex-wrap: wrap;
    }

    .shua-screen-review-card__author > a {
        margin-left: 0;
    }

    .single-product .product-details-area {
        padding-top: 8px;
    }

    .single-product .tpproduct-details__nab.product-gallery-vertical {
        gap: 10px;
    }

    .single-product .tpproduct-details__nab .product-gallery__wrapper {
        width: calc(100% - 78px) !important;
        max-width: calc(100% - 78px);
    }

    .single-product .tpproduct-details__nab .product-gallery__wrapper a {
        min-height: 320px;
        padding: 10px;
    }

    .single-product .tpproduct-details__nab .product-gallery__wrapper img {
        max-height: 320px;
    }

    .single-product .product-thumbnails {
        width: 68px;
    }

    .single-product .product-thumbnails img {
        width: 68px;
        height: 68px;
        padding: 5px;
    }

    .single-product .tpproduct-details__nav {
        overflow-x: auto;
        padding-bottom: 1px;
        scrollbar-width: none;
    }

    .single-product .tpproduct-details__nav::-webkit-scrollbar {
        display: none;
    }

    .single-product .pro-details-nav-btn {
        flex-wrap: nowrap;
        min-width: max-content;
    }

    .single-product .pro-details-nav-btn .nav-links {
        min-height: 38px;
        padding: 0 14px;
        font-size: 12px;
        white-space: nowrap;
    }

    .single-product .ck-content {
        font-size: 14px;
        line-height: 1.7;
    }

    .single-product .ck-content p {
        font-size: 14px;
        line-height: 1.7;
    }

    .single-product .ck-content h2,
    .single-product .ck-content h3,
    .single-product .ck-content h4 {
        margin-top: 24px;
        font-size: 18px;
        line-height: 1.3;
    }

    .single-product .ck-content > ul:first-of-type,
    .single-product .ck-content ul:not(:first-of-type) {
        grid-template-columns: 1fr;
    }

    .single-product .ck-content table,
    .single-product .ck-content table tbody,
    .single-product .ck-content table tr,
    .single-product .ck-content table th,
    .single-product .ck-content table td,
    .single-product .tp-product-details-additional-info table,
    .single-product .tp-product-details-additional-info table tbody,
    .single-product .tp-product-details-additional-info table tr,
    .single-product .tp-product-details-additional-info table th,
    .single-product .tp-product-details-additional-info table td {
        display: block;
        width: 100%;
    }

    .single-product .ck-content table th,
    .single-product .tp-product-details-additional-info table td:first-child,
    .single-product .tp-product-details-additional-info table th {
        width: 100%;
        padding: 11px 14px 6px;
        border-bottom: 0;
    }

    .single-product .ck-content table td,
    .single-product .tp-product-details-additional-info table td:last-child {
        padding: 0 14px 12px;
    }
}

@media (max-width: 480px) {
    .shua-screen-deals-grid,
    .shua-screen-product-row,
    .shua-screen-suggest-grid,
    .shua-screen-landing-row,
    .shua-screen-mini-products {
        grid-template-columns: none;
    }
}

/* weekly deals: real discounts */
.shua-screen-badge.is-sale { padding: 4px 11px; border-radius: 4px; background: var(--shua-brand); color: #fff; }
.shua-screen-product-card strong del { color: #9aa0a6; font-weight: 500; font-size: .82em; margin-left: 6px; }

/* ------------------------------------------------------------
   Mobile product page: stacked gallery, no horizontal overflow
------------------------------------------------------------ */
@media (max-width: 767px) {
    .single-product .pt-80 { padding-top: 16px !important; }
    .single-product .product-area.row { --bs-gutter-x: 24px; }
    .single-product .tpproduct-details__nab.product-gallery-vertical {
        display: block;
        gap: 0;
    }
    .single-product .tpproduct-details__nab .product-gallery__wrapper {
        width: 100% !important;
        max-width: 100%;
    }
    .single-product .tpproduct-details__nab .product-gallery__wrapper a {
        min-height: 0;
        padding: 8px;
    }
    .single-product .tpproduct-details__nab .product-gallery__wrapper img {
        max-height: 360px;
    }
    .single-product .product-thumbnails {
        width: 100%;
        max-width: 100%;
        margin-top: 10px;
        padding: 0;
    }
    .single-product .product-thumbnails .slick-slide { padding: 0 3px; }
    .single-product .product-thumbnails img {
        width: 100%;
        height: 64px;
        padding: 4px;
    }
    .single-product .product-thumbnails .slick-arrow { display: none !important; }
}

/* Mobile: tighter section paddings on utility pages (cart, wishlist, compare, auth, contact) */
@media (max-width: 767px) {
    .pt-80 { padding-top: 28px !important; }
    .pb-80 { padding-bottom: 36px !important; }
}

/* bottom cards: when the news card is hidden (no published posts) let the remaining card span the grid */
.shua-screen-bottom-cards > :only-child { grid-column: 1 / -1; }

/* ------------------------------------------------------------
   Catalog sidebar: calm category hierarchy and compact price card
------------------------------------------------------------ */
.bb-shop-sidebar .bb-product-form-filter {
    display: grid;
    gap: 16px;
}

.bb-shop-sidebar .bb-product-filter {
    margin: 0 !important;
    padding: 18px;
    border: 1px solid var(--shua-line);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(11, 27, 39, .035);
}

.bb-shop-sidebar .bb-product-filter-title {
    margin: 0 0 13px !important;
    padding: 0 0 12px;
    border: 0 !important;
    border-bottom: 1px solid var(--shua-line) !important;
    color: var(--shua-ink);
    font-size: 18px;
    line-height: 1.25;
}

.bb-shop-sidebar .bb-product-filter-content,
.bb-shop-sidebar .bb-product-filter-items {
    margin: 0;
    padding: 0;
}

.bb-shop-sidebar .bb-product-filter-item {
    position: relative;
    margin: 0;
    padding: 0;
}

.bb-shop-sidebar .bb-product-filter-link {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-height: 32px;
    padding: 7px 30px 7px 0;
    color: #58636e;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    overflow-wrap: anywhere;
    transition: color .2s ease, background-color .2s ease;
}

.bb-shop-sidebar .bb-product-filter-link:hover,
.bb-shop-sidebar .bb-product-filter-link.active {
    color: var(--shua-brand);
}

.bb-shop-sidebar .bb-product-filter-link.active {
    font-weight: 700;
}

.bb-shop-sidebar .bb-product-filter-link > svg,
.bb-shop-sidebar .bb-product-filter-link > img {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin-top: 1px;
    color: currentColor;
    object-fit: contain;
}

.bb-shop-sidebar .bb-product-filter-item > button[data-bb-toggle="toggle-product-categories-tree"] {
    position: absolute;
    top: 3px;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #8a949e;
    transition: background-color .2s ease, color .2s ease;
}

.bb-shop-sidebar .bb-product-filter-item > button[data-bb-toggle="toggle-product-categories-tree"]:hover {
    background: var(--shua-brand-soft);
    color: var(--shua-brand);
}

.bb-shop-sidebar .bb-product-filter-item > button svg {
    width: 15px;
    height: 15px;
}

.bb-shop-sidebar .bb-product-filter-items .bb-product-filter-items {
    margin: 3px 0 7px 7px !important;
    padding-left: 14px !important;
    border-left: 1px solid #e6eaee;
}

.bb-shop-sidebar .bb-product-filter-items .bb-product-filter-items .bb-product-filter-link {
    min-height: 30px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 12.5px;
}

.bb-shop-sidebar .bb-product-price-filter .price-slider {
    height: 4px;
    margin: 9px 7px 17px !important;
    border: 0;
    border-radius: 999px;
    background: #e4e8ec;
}

.bb-shop-sidebar .bb-product-price-filter .ui-slider-range {
    border-radius: 999px;
    background: var(--shua-brand);
}

.bb-shop-sidebar .bb-product-price-filter .ui-slider-handle {
    top: -6px;
    width: 16px;
    height: 16px;
    border: 3px solid var(--shua-brand);
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 2px 7px rgba(11, 27, 39, .12);
}

.bb-shop-sidebar .bb-product-price-filter .input-range-label {
    color: var(--shua-ink);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

@media (min-width: 992px) {
    .product-filter-mobile {
        padding-inline-end: 12px;
    }

    .product-filter-mobile__content {
        position: sticky;
        top: 92px;
    }
}

@media (max-width: 991px) {
    .bb-shop-sidebar .bb-product-form-filter {
        gap: 12px;
    }

    .bb-shop-sidebar .bb-product-filter {
        padding: 16px;
        box-shadow: none;
    }
}

/* ------------------------------------------------------------
   Shared inner-page header: compact and aligned to the left edge
------------------------------------------------------------ */
.breadcrumb__area.tp-breadcrumb__bg {
    min-height: 0;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
}

.breadcrumb__area .container {
    width: 100%;
    max-width: none !important;
    padding-right: clamp(20px, 3vw, 48px);
    padding-left: clamp(20px, 3vw, 48px);
}

.breadcrumb__area .tp-breadcrumb,
.breadcrumb__area .tp-breadcrumb__link,
.breadcrumb__area .tp-breadcrumb__title {
    text-align: left;
}

.breadcrumb__area .tp-breadcrumb__link {
    margin-bottom: 6px !important;
    line-height: 1.4;
}

.breadcrumb__area .tp-breadcrumb__link span {
    font-size: 12px;
    line-height: 1.4;
}

.breadcrumb__area .tp-breadcrumb__title {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
}

@media (max-width: 767px) {
    .breadcrumb__area.tp-breadcrumb__bg {
        padding-top: 14px !important;
        padding-bottom: 14px !important;
    }

    .breadcrumb__area .container {
        padding-right: 16px;
        padding-left: 16px;
    }

    .breadcrumb__area .tp-breadcrumb__link span {
        font-size: 10.5px;
    }

    .breadcrumb__area .tp-breadcrumb__title {
        font-size: 20px;
    }
}
