/* ==========================================================
   PATCHESWHOLESALE PREMIUM HEADER
   File: pw_premium_header.css
   Compatible with OpenCart 3.x default Bootstrap structure
   All custom styling uses pw-specific selectors.
   ========================================================== */

/* ---------- TOP ANNOUNCEMENT BAR ---------- */

.pw-topbar {
    background: #171717;
    color: #ffffff;
    border-bottom: 1px solid #b99a60;
    font-size: 11px;
    position: relative;
    z-index: 1050;
}

.pw-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 40px;
    padding-top: 6px;
    padding-bottom: 6px;
}

.pw-topbar-announcement {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
    line-height: 1.6;
}

.pw-topbar-announcement>.fa-truck {
    color: #d9b36c;
    font-size: 14px;
    margin-right: 3px;
}

.pw-topbar-separator {
    color: #b99a60;
}

.pw-topbar-announcement .pw-shipping-link {
    color: #e4c68e;
    font-weight: 700;
    text-decoration: none;
}

.pw-topbar-announcement .pw-shipping-link:hover {
    color: #ffffff;
    text-decoration: underline;
}

.pw-topbar-links {
    flex-shrink: 0;
}

.pw-topbar-links .list-inline {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 0;
    margin: 0;
}

.pw-topbar-links .list-inline>li {
    padding: 0;
    margin: 0;
    position: relative;
}

.pw-topbar-links a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #eeeeee;
    text-decoration: none;
    transition: color .2s ease;
}

.pw-topbar-links a:hover,
.pw-topbar-links li.open>a {
    color: #dfc28b;
}

.pw-topbar-links a>.fa {
    font-size: 12px;
}

.pw-small-chevron {
    font-size: 10px !important;
}

.pw-topbar-links .dropdown-menu,
.pw-account-dropdown-menu {
    min-width: 200px !important;
    margin-top: 8px !important;
    padding: 6px 0 !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-top: 3px solid var(--pw-color-primary, #087cc1) !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.18) !important;
    z-index: 99999 !important;
}

.pw-account-dropdown-menu>li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pw-account-dropdown-menu>li>a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 18px !important;
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    text-shadow: none !important;
    text-decoration: none !important;
    transition: all 0.18s ease !important;
    background: transparent !important;
}

.pw-account-dropdown-menu>li>a>i {
    font-size: 14px !important;
    color: #64748b !important;
    width: 16px !important;
    text-align: center !important;
    transition: color 0.18s ease !important;
}

.pw-account-dropdown-menu>li>a:hover,
.pw-account-dropdown-menu>li>a:focus {
    color: var(--pw-color-primary, #087cc1) !important;
    background: #f0f7ff !important;
    padding-left: 22px !important;
}

.pw-account-dropdown-menu>li>a:hover>i {
    color: var(--pw-color-primary, #087cc1) !important;
}

.pw-account-dropdown-menu .divider {
    height: 1px !important;
    margin: 5px 0 !important;
    overflow: hidden !important;
    background-color: #e2e8f0 !important;
}

.pw-account-dropdown-menu>li>a.pw-account-logout-link {
    color: #dc2626 !important;
}

.pw-account-dropdown-menu>li>a.pw-account-logout-link>i {
    color: #dc2626 !important;
}

.pw-account-dropdown-menu>li>a.pw-account-logout-link:hover {
    background: #fef2f2 !important;
    color: #b91c1c !important;
}

/* ---------- STICKY HEADER & MENU WRAPPER (DESKTOP & MOBILE) ---------- */

.pw-header-sticky-wrapper {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
    background: #ffffff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.09);
    transition: box-shadow 0.25s ease;
}

/* ---------- MAIN HEADER ---------- */

.pw-header-main {
    position: relative;
    z-index: 1021;
    background: #ffffff;
    border-bottom: 1px solid #eeeeee;
}

.pw-header-main>.container {
    padding-top: 15px;
    padding-bottom: 15px;
}

.pw-header-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pw-header-row>.pw-logo-column,
.pw-header-row>.pw-search-column,
.pw-header-row>.pw-cart-column {
    float: none;
}

.pw-header-main #logo {
    display: flex;
    align-items: center;
    min-height: 48px;
}

.pw-header-main #logo a {
    color: #171717;
    text-decoration: none;
}

.pw-header-main #logo img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 72px;
}

.pw-header-main #logo h1 {
    margin: 0;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.3;
}

.pw-header-main .pw-search-wrapper {
    width: 100%;
}

.pw-header-main .pw-search-wrapper>* {
    max-width: 100%;
}

.pw-header-main .pw-search-wrapper input {
    box-shadow: none;
}

.pw-header-main .pw-search-wrapper input:focus {
    border-color: #b99a60;
    outline: none;
    box-shadow: 0 0 0 2px rgba(185, 154, 96, .12);
}

.pw-header-main .pw-cart-wrapper {
    width: 100%;
}

/* ---------- CATEGORY NAVIGATION ---------- */

.pw-menu-shell {
    position: relative;
    z-index: 1000;
    background: #ffffff;
    border-bottom: 1px solid #e6e2d9;
}

.pw-menu-shell #menu.pw-category-nav {
    min-height: 0;
    margin: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.pw-menu-shell #menu .navbar-nav>li>a {
    padding: 17px 14px;
    color: #252525;
    background: transparent;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .45px;
    line-height: 20px;
    text-transform: uppercase;
    transition: color .2s ease, background-color .2s ease;
}

.pw-menu-shell #menu .navbar-nav>li>a:hover,
.pw-menu-shell #menu .navbar-nav>li>a:focus,
.pw-menu-shell #menu .navbar-nav>li.open>a {
    color: #98783f;
    background: #faf8f4;
}

.pw-menu-shell #menu .pw-category-chevron {
    margin-left: 5px;
    color: #9d865a;
    font-size: 12px;
}

.pw-menu-shell #menu .dropdown-menu {
    display: none;
    min-width: 220px;
    padding: 8px 0;
    margin-top: 0;
    background: #ffffff;
    border: 1px solid #e8e1d5;
    border-top: 2px solid #b99a60;
    border-radius: 0 0 3px 3px;
    box-shadow: 0 12px 26px rgba(0, 0, 0, .09);
}

.pw-menu-shell #menu li.dropdown.open>.dropdown-menu {
    display: block;
}

.pw-menu-shell #menu .dropdown-inner {
    display: flex;
    align-items: flex-start;
}

.pw-menu-shell #menu .dropdown-inner ul {
    min-width: 180px;
    padding: 0;
    margin: 0;
}

.pw-menu-shell #menu .dropdown-inner li a {
    display: block;
    padding: 9px 16px;
    color: #333333;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    text-transform: none;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease;
}

.pw-menu-shell #menu .dropdown-inner li a:hover {
    color: #98783f;
    background: #faf8f4;
}

.pw-menu-shell #menu .see-all {
    display: block;
    padding: 11px 16px;
    margin-top: 5px;
    color: #222222;
    background: #faf9f6;
    border-top: 1px solid #ece7dd;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
}

.pw-menu-shell #menu .see-all:hover {
    color: #98783f;
}

.pw-menu-shell #menu .see-all>.fa {
    margin-left: 5px;
}

.pw-menu-shell #menu .pw-mobile-menu-label {
    display: none;
}

/* ---------- TABLET ---------- */

@media (min-width: 768px) and (max-width: 991px) {
    .pw-topbar-inner {
        gap: 10px;
    }

    .pw-topbar-announcement {
        font-size: 10px;
        gap: 5px;
    }

    .pw-topbar-links .list-inline {
        gap: 10px;
    }

    .pw-topbar-label {
        display: none;
    }

    .pw-header-main>.container {
        padding-top: 16px;
        padding-bottom: 16px;
    }

    .pw-menu-shell #menu .navbar-nav>li>a {
        padding-right: 8px;
        padding-left: 8px;
        font-size: 10px;
        letter-spacing: .2px;
    }

    .pw-menu-shell #menu .pw-category-chevron {
        margin-left: 2px;
    }
}

/* ---------- MOBILE ---------- */

@media (max-width: 767px) {
    .pw-topbar-inner {
        display: block;
        min-height: 0;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .pw-topbar-announcement {
        justify-content: center;
        text-align: center;
        gap: 4px 6px;
        font-size: 10px;
    }

    .pw-topbar-announcement>.fa-truck {
        font-size: 12px;
    }

    .pw-international-separator,
    .pw-international-text {
        display: none;
    }

    .pw-topbar-links {
        display: none;
    }

    .pw-header-main>.container {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .pw-header-row {
        display: block;
    }

    .pw-header-row>.pw-logo-column,
    .pw-header-row>.pw-search-column,
    .pw-header-row>.pw-cart-column {
        width: 100%;
    }

    .pw-header-main #logo {
        justify-content: center;
        margin-bottom: 14px;
    }

    .pw-header-main #logo img {
        max-height: 58px;
    }

    .pw-header-main #logo h1 {
        font-size: 22px;
    }

    .pw-header-main .pw-search-wrapper {
        margin-bottom: 12px;
    }

    .pw-header-main .pw-cart-wrapper {
        margin-top: 5px;
    }

    .pw-menu-shell #menu .navbar-header {
        min-height: 44px;
    }

    .pw-menu-shell #menu #category {
        display: inline-block;
        padding: 12px 0;
        color: #222222;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .5px;
        text-transform: uppercase;
    }

    .pw-menu-shell #menu .navbar-toggle {
        display: block;
        float: right;
        margin: 5px 0;
        padding: 8px 10px;
        color: #222222;
        background: #ffffff;
        border: 1px solid #ded8cc;
        border-radius: 3px;
    }

    .pw-menu-shell #menu .navbar-toggle:hover,
    .pw-menu-shell #menu .navbar-toggle:focus {
        color: #98783f;
        background: #faf8f4;
    }

    .pw-menu-shell #menu .pw-mobile-menu-label {
        display: inline;
        margin-left: 4px;
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
    }

    .pw-menu-shell #menu .navbar-collapse {
        padding-right: 0;
        padding-left: 0;
        border-top: 1px solid #eee9df;
        box-shadow: none;
    }

    .pw-menu-shell #menu .navbar-nav {
        margin: 0;
    }

    .pw-menu-shell #menu .navbar-nav>li>a {
        padding: 12px 10px;
        border-bottom: 1px solid #f0eee9;
        font-size: 11px;
    }

    /* Keep mobile subcategories closed until their parent is opened */
    .pw-menu-shell #menu .dropdown-menu {
        position: static;
        float: none;
        display: none;
        width: 100%;
        min-width: 0;
        padding: 0;
        margin: 0;
        border: 0;
        border-top: 1px solid #eee9df;
        border-radius: 0;
        box-shadow: none;
    }

    .pw-menu-shell #menu li.dropdown.open>.dropdown-menu {
        display: block;
    }

    .pw-menu-shell #menu .dropdown-inner {
        display: block;
    }

    .pw-menu-shell #menu .dropdown-inner ul {
        width: 100%;
        min-width: 0;
    }

    .pw-menu-shell #menu .dropdown-inner li a {
        padding: 10px 25px;
        background: #faf9f6;
        border-bottom: 1px solid #efede8;
    }

    .pw-menu-shell #menu .see-all {
        padding-left: 25px;
    }
}

/* ---------- REDUCED MOTION ---------- */

@media (prefers-reduced-motion: reduce) {

    .pw-topbar-announcement a,
    .pw-topbar-links a,
    .pw-menu-shell #menu .navbar-nav>li>a,
    .pw-menu-shell #menu .dropdown-inner li a {
        transition: none;
    }
}

/* ==========================================================
   MOBILE JOURNAL-INSPIRED HEADER + SLIDE-IN DRAWER
   Desktop header/navigation styles above remain unchanged.
   ========================================================== */

/* Desktop hides mobile-only controls */
.pw-mobile-header,
.pw-amazon-mobile-header {
    display: none;
}

.pw-mobile-search-row {
    display: none;
}

/* Mobile utility links, without language/currency */
.pw-mobile-utility {
    display: none;
}

/* Drawer backdrop */
.pw-mobile-overlay {
    position: fixed;
    inset: 0;
    z-index: 10090;
    display: block;
    background: rgba(0, 0, 0, .58);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}

.pw-mobile-overlay.is-open {
    opacity: 1;
    visibility: visible;
}

/* Drawer panel */
.pw-mobile-drawer {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 10091;
    display: flex;
    flex-direction: column;
    width: min(88vw, 370px);
    max-width: 100%;
    height: 100%;
    overflow: hidden;
    color: #222;
    background: #fff;
    box-shadow: 8px 0 28px rgba(0, 0, 0, .22);
    transform: translateX(-105%);
    visibility: hidden;
    transition: transform .28s ease, visibility .28s ease;
}

.pw-mobile-drawer.is-open {
    transform: translateX(0);
    visibility: visible;
}

.pw-mobile-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
    padding: 10px 16px;
    color: #222;
    background: #f1f2f3;
    border-bottom: 1px solid #e1e1e1;
}

.pw-mobile-drawer-title {
    margin: 0;
    color: #222;
    font-size: 16px;
    font-weight: 700;
}

.pw-mobile-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    color: #555;
    background: transparent;
    border: 0;
    font-size: 22px;
    cursor: pointer;
}

.pw-mobile-tabs {
    display: flex;
    flex: 0 0 auto;
    border-bottom: 1px solid #e4e4e4;
    background: #f7f7f7;
}

.pw-mobile-tab {
    flex: 1 1 50%;
    min-height: 46px;
    padding: 12px 8px;
    color: #555;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

.pw-mobile-tab.is-active {
    color: var(--pw-color-primary, #0875D1) !important;
    background: #fff;
    border-bottom-color: var(--pw-color-primary, #0875D1) !important;
}

.pw-mobile-tab .fa {
    margin-right: 6px;
}

.pw-mobile-drawer-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.pw-mobile-tab-panel {
    display: none;
    padding: 0 0 18px;
}

.pw-mobile-tab-panel.is-active {
    display: block;
}

/* Drawer category accordion */
.pw-mobile-category-list,
.pw-mobile-account-list,
.pw-mobile-subcategory-list {
    padding: 0;
    margin: 0;
    list-style: none;
}

.pw-mobile-category-item {
    margin: 0;
    border-bottom: 1px solid #eaeaea;
}

.pw-mobile-category-row {
    display: flex;
    align-items: stretch;
    min-height: 48px;
}

.pw-mobile-category-link {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    padding: 12px 16px;
    color: #242424;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.pw-mobile-category-link:hover,
.pw-mobile-category-link:focus {
    color: var(--pw-color-primary, #0875D1) !important;
    background: #f0f7ff !important;
    text-decoration: none;
}

.pw-mobile-accordion-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    width: 48px;
    color: #444;
    background: #fff;
    border: 0;
    font-size: 15px;
    cursor: pointer;
}

.pw-mobile-accordion-toggle .fa {
    transition: transform .2s ease;
}

.pw-mobile-category-item.is-expanded>.pw-mobile-category-row .pw-mobile-accordion-toggle .fa {
    transform: rotate(90deg);
}

.pw-mobile-subcategory-list {
    display: none;
    background: #f8fafc;
}

.pw-mobile-category-item.is-expanded>.pw-mobile-subcategory-list {
    display: block;
}

.pw-mobile-subcategory-list a {
    display: block;
    padding: 11px 16px 11px 30px;
    color: #444;
    border-top: 1px solid #e2e8f0;
    font-size: 12px;
    text-decoration: none;
}

.pw-mobile-subcategory-list a:hover,
.pw-mobile-subcategory-list a:focus {
    color: var(--pw-color-primary, #0875D1) !important;
    background: #f0f7ff !important;
}

.pw-mobile-see-all {
    display: block;
    padding: 12px 30px;
    color: #222;
    background: #f0f0f0;
    border-top: 1px solid #e5e5e5;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
}

/* Account panel */
.pw-mobile-account-list li {
    border-bottom: 1px solid #eaeaea;
}

.pw-mobile-account-list a {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 12px 18px;
    color: #292929;
    font-size: 13px;
    text-decoration: none;
}

.pw-mobile-account-list a .fa {
    width: 18px;
    color: var(--pw-color-primary, #0875D1) !important;
    text-align: center;
}

.pw-mobile-account-list a:hover,
.pw-mobile-account-list a:focus {
    color: var(--pw-color-primary, #0875D1) !important;
    background: #f0f7ff !important;
}

body.pw-mobile-drawer-open {
    overflow: hidden;
}

/* Mobile-specific header only */
@media (max-width: 767px) {
    .pw-topbar-inner {
        display: block;
        min-height: 0;
        padding: 8px 10px;
    }

    .pw-topbar-announcement {
        justify-content: center;
        gap: 4px 6px;
        text-align: center;
        font-size: 10px;
    }

    .pw-topbar-announcement>.fa-truck {
        font-size: 12px;
    }

    .pw-topbar-links {
        display: none !important;
    }

    /* Keep desktop header untouched; replace it visually on mobile */
    .pw-header-main>.container {
        padding: 0 !important;
    }

    .pw-header-main .pw-header-row {
        display: none !important;
    }

    .pw-mobile-utility {
        display: none !important;
    }

    .pw-mobile-utility a {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        color: #fff;
        text-decoration: none;
    }

    .pw-mobile-utility-left {
        display: flex;
        align-items: center;
        gap: 14px;
    }

    /* =======================================================
       AMAZON-STYLE ULTRA-COMPACT MOBILE HEADER (<20% VIEWPORT)
       ======================================================= */
    .pw-amazon-mobile-header {
        display: flex !important;
        flex-direction: column !important;
        background: #ffffff !important;
        border-bottom: 1px solid #e2e8f0 !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06) !important;
        position: relative !important;
        z-index: 1005 !important;
    }

    /* Top tier: 44px compact bar */
    .pw-amh-topbar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        height: 46px !important;
        padding: 0 12px !important;
        gap: 8px !important;
        background: #ffffff !important;
    }

    .pw-amh-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        height: 38px !important;
        padding: 0 !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        color: #1e293b !important;
        font-size: 17px !important;
        text-decoration: none !important;
        cursor: pointer !important;
        position: relative !important;
        border-radius: 8px !important;
        transition: all 0.15s ease !important;
    }

    .pw-amh-btn:active,
    .pw-amh-btn:hover {
        background-color: #f0f7ff !important;
        border-color: #bfdbfe !important;
        color: var(--pw-color-primary, #087cc1) !important;
    }

    .pw-amh-logo {
        flex: 1 1 auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        max-height: 40px !important;
        overflow: hidden !important;
    }

    .pw-amh-logo img {
        max-height: 36px !important;
        width: auto !important;
        max-width: 170px !important;
        object-fit: contain !important;
    }

    .pw-amh-brand-text {
        font-size: 17px !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        text-decoration: none !important;
    }

    .pw-amh-actions {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .pw-amh-cart-badge {
        position: absolute !important;
        top: -5px !important;
        right: -6px !important;
        background: #dc2626 !important;
        color: #ffffff !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        min-width: 19px !important;
        height: 19px !important;
        padding: 0 4px !important;
        border-radius: 10px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
        border: 2px solid #ffffff !important;
        box-shadow: 0 2px 5px rgba(220, 38, 38, 0.4) !important;
        z-index: 2 !important;
    }

    /* Second tier: Persistent Amazon Search Bar (40px) */
    .pw-amh-search-bar {
        padding: 4px 10px 8px 10px !important;
        background: #ffffff !important;
    }

    .pw-live-search-box {
        position: relative !important;
        width: 100% !important;
    }

    .pw-live-search-input-wrap {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
    }

    .pw-live-search-lens {
        position: absolute !important;
        left: 12px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        color: #64748b !important;
        font-size: 14px !important;
        pointer-events: none !important;
        z-index: 2 !important;
    }

    .pw-live-search-input {
        width: 100% !important;
        height: 38px !important;
        padding: 6px 36px 6px 36px !important;
        background: #f8fafc !important;
        border: 1.5px solid #cbd5e1 !important;
        border-radius: 8px !important;
        font-size: 13.5px !important;
        color: #0f172a !important;
        box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04) !important;
        transition: all 0.2s ease !important;
    }

    .pw-live-search-input:focus {
        background: #ffffff !important;
        border-color: var(--pw-color-primary, #087cc1) !important;
        box-shadow: 0 0 0 3px rgba(8, 124, 193, 0.15) !important;
        outline: none !important;
    }

    .pw-live-search-clear {
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        background: none !important;
        border: none !important;
        font-size: 18px !important;
        line-height: 1 !important;
        color: #94a3b8 !important;
        cursor: pointer !important;
        padding: 4px 8px !important;
        z-index: 2 !important;
    }

    .pw-live-search-clear:hover {
        color: #0f172a !important;
    }

    .pw-menu-shell {
        display: none !important;
    }

    .pw-mobile-drawer {
        width: min(88vw, 360px);
    }
}

@media (prefers-reduced-motion: reduce) {

    .pw-mobile-overlay,
    .pw-mobile-drawer,
    .pw-mobile-accordion-toggle .fa {
        transition: none;
    }
}


/* ==========================================================
   CART DRAWER FIX â€” OPEN FROM THE RIGHT
   Targets the standard OpenCart #cart dropdown markup.
   ========================================================== */

@media (max-width: 767px) {

    /* Keep cart and its drawer above the header */
    .pw-header-main #cart {
        position: static;
    }

    .pw-header-main #cart.open::before {
        content: "";
        position: fixed;
        inset: 0;
        z-index: 10990;
        display: block;
        background: rgba(0, 0, 0, .48);
    }

    .pw-header-main #cart>.dropdown-menu,
    .pw-header-main #cart.open>.dropdown-menu {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        z-index: 10991 !important;
        display: block !important;
        float: none !important;
        width: min(88vw, 380px) !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #222222;
        background: #ffffff !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: -8px 0 28px rgba(0, 0, 0, .20) !important;
        transform: translateX(105%);
        visibility: hidden;
        opacity: 1;
        transition: transform .28s ease, visibility .28s ease;
        -webkit-overflow-scrolling: touch;
    }

    .pw-header-main #cart.open>.dropdown-menu {
        transform: translateX(0);
        visibility: visible;
    }

    /* Prevent inherited dropdown item styles from breaking cart rows */
    .pw-header-main #cart>.dropdown-menu>li {
        position: relative;
        display: block;
        width: 100%;
        padding: 12px 16px;
        border-bottom: 1px solid #eeeeee;
        background: #ffffff;
    }

    .pw-header-main #cart>.dropdown-menu>li:first-child {
        padding-top: 16px;
    }

    .pw-header-main #cart>.dropdown-menu>li>p {
        margin: 0;
        padding: 12px 0;
        color: #555555;
        text-align: center;
    }

    .pw-header-main #cart>.dropdown-menu .table {
        margin-bottom: 0;
        border: 0;
    }

    .pw-header-main #cart>.dropdown-menu .table td,
    .pw-header-main #cart>.dropdown-menu .table th {
        padding: 8px 5px;
        vertical-align: middle;
        border-top: 1px solid #eeeeee;
    }

    .pw-header-main #cart>.dropdown-menu .text-right {
        text-align: right;
    }

    .pw-header-main #cart>.dropdown-menu .btn {
        white-space: normal;
    }

    /* Keep cart drawer above the backdrop */
    .pw-header-main #cart.open {
        z-index: 10991;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pw-header-main #cart>.dropdown-menu {
        transition: none;
    }
}




/* ==========================================================
   PATCHESWHOLESALE PREMIUM TYPOGRAPHY & DESIGN SYSTEM
   Source specification: patcheswholesale-typography-guide.md
   Fonts: 'Barlow Condensed' (Headings) & 'Inter' (Body / UI)
   Colors: Primary #0875D1 | Accent #FFC400 | Text #18212F | Muted #626B78
   ========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Inter:wght@400;500;600;700;800&display=swap');

:root {
    --pw-font-heading: 'Barlow Condensed', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --pw-font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

    --pw-color-primary: #0875D1;
    --pw-color-primary-hover: #065ea8;
    --pw-color-accent: #FFC400;
    --pw-color-accent-hover: #e0ac00;
    --pw-color-text: #18212F;
    --pw-color-muted: #626B78;
    --pw-color-light-bg: #F8FAFC;
    --pw-color-border: #E5E7EB;
    --pw-color-border-card: #E2E8F0;
    --pw-card-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
    --pw-card-shadow-hover: 0 12px 28px rgba(8, 117, 209, 0.12);
}

/* Base body typography override */
body {
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: var(--pw-color-text) !important;
    background-color: #f8fafc !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Headings Typography Scale from Guide */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: var(--pw-font-heading) !important;
    color: var(--pw-color-text) !important;
    line-height: 1.2 !important;
    margin-top: 0;
    letter-spacing: 0.2px;
}

h1,
.h1 {
    font-size: 44px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
}

h2,
.h2 {
    font-size: 34px !important;
    font-weight: 700 !important;
}

h3,
.h3 {
    font-size: 26px !important;
    font-weight: 700 !important;
}

h4,
.h4 {
    font-size: 20px !important;
    font-weight: 600 !important;
}

h5,
.h5 {
    font-size: 18px !important;
    font-weight: 600 !important;
}

h6,
.h6 {
    font-size: 16px !important;
    font-weight: 600 !important;
}

/* Section titles (e.g. Latest, Best Selling, Shop by Category) */
#content>h3,
.pwcs-heading,
.pwbs-heading-row h3 {
    font-family: var(--pw-font-heading) !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #0f172a !important;
    margin: 0 0 16px 0 !important;
    position: relative;
    padding-bottom: 10px;
}

#content>h3::after,
.pwbs-heading-row h3::after,
.pwcs-heading-row h3::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 44px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary), var(--pw-color-accent));
    border-radius: 2px;
}

/* Ensure clean grid rows spacing for product cards */
#content>.row {
    margin-bottom: 0 !important;
}

/* Top margin for content container */
#common-home #content {
    padding-top: 10px !important;
}

/* ==========================================================
   HOMEPAGE SECTION-BY-SECTION SPACING HARMONIZATION
   Exact clean vertical rhythm matching Banner <-> Benefits
   ========================================================== */

/* 1. Main Hero Slider */
.slideshow.swiper-viewport {
    margin-top: 0 !important;
    margin-bottom: 22px !important;
}

/* 2. Benefits / Trust Bar */
.pw-benefits {
    border-radius: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 16px rgba(8, 117, 209, 0.10) !important;
}

/* 3. Category Slider Module */
.pwcs-module {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
}

.pwcs-heading-row {
    margin-bottom: 14px !important;
}

/* 4. Latest Section (h3 + product grid) */
#content>h3 {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}

#content>h3+.row {
    /* margin-bottom: 24px !important; */
}

/* 5. Best Selling Module */
.pwbs-module {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
}

.pwbs-heading-row {
    margin-bottom: 14px !important;
}

/* 6. Testimonials Section */
.pw-testimonials-section {
    margin-top: 0 !important;
    margin-bottom: 30px !important;
}

.pw-testimonials-header {
    margin-bottom: 16px !important;
}

/* ==========================================================
   ENHANCED HEADER BAR & TOPBAR STYLING
   ========================================================== */

.pw-topbar {
    background: #0f172a !important;
    /* Rich slate dark */
    border-bottom: 1px solid rgba(255, 196, 0, 0.4) !important;
    font-family: var(--pw-font-body) !important;
    font-size: 12px !important;
    font-weight: 500;
}

.pw-topbar-announcement {
    font-size: 12px !important;
    letter-spacing: 0.2px;
}

.pw-topbar-announcement>.fa-truck {
    color: var(--pw-color-accent) !important;
}

.pw-topbar-announcement .pw-shipping-link {
    color: #fde047 !important;
    font-weight: 700 !important;
}

.pw-topbar-links a {
    font-family: var(--pw-font-body) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #e2e8f0 !important;
}

.pw-topbar-links a:hover,
.pw-topbar-links li.open>a {
    color: var(--pw-color-accent) !important;
}

/* Main header */
.pw-header-main {
    background: #ffffff !important;
    border-bottom: 1px solid var(--pw-color-border) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03) !important;
}

.pw-header-main>.container {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
}

/* Search input polish */
.pw-header-main .pw-search-wrapper #search {
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    transition: all 0.25s ease;
}

.pw-header-main .pw-search-wrapper #search:focus-within {
    border-color: var(--pw-color-primary) !important;
    box-shadow: 0 0 0 3px rgba(8, 117, 209, 0.15) !important;
}

.pw-header-main .pw-search-wrapper #search input.form-control {
    border: 0 !important;
    box-shadow: none !important;
    font-family: var(--pw-font-body) !important;
    font-size: 14px !important;
    height: 44px !important;
    padding: 0 16px !important;
    color: var(--pw-color-text) !important;
}

.pw-header-main .pw-search-wrapper #search .input-group-btn .btn {
    border: 0 !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    height: 44px !important;
    padding: 0 24px !important;
    font-size: 16px !important;
    border-left: 1px solid #e2e8f0 !important;
    border-radius: 0 !important;
    transition: all 0.2s ease;
}

.pw-header-main .pw-search-wrapper #search .input-group-btn .btn:hover {
    background: var(--pw-color-primary) !important;
    color: #ffffff !important;
}

/* Cart dropdown button in header */
.pw-header-main #cart>.btn {
    height: 44px !important;
    border-radius: 6px !important;
    background: linear-gradient(135deg, #1e293b, #0f172a) !important;
    border: 1px solid #0f172a !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12) !important;
    transition: all 0.25s ease !important;
}

.pw-header-main #cart>.btn:hover {
    background: linear-gradient(135deg, #0f172a, #020617) !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.22) !important;
    transform: translateY(-1px);
}

.pw-header-main #cart>.btn .fa-shopping-cart {
    color: var(--pw-color-accent);
    font-size: 15px;
}

/* Desktop Navigation Menu */
.pw-menu-shell {
    background: #ffffff !important;
    border-bottom: 2px solid #e2e8f0 !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.02) !important;
}

.pw-menu-shell #menu .navbar-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin: 0 !important;
}

.pw-menu-shell #menu .navbar-nav>li {
    float: none !important;
    display: inline-block !important;
    white-space: nowrap !important;
    flex: 0 1 auto !important;
}

.pw-menu-shell #menu .navbar-nav>li>a {
    font-family: var(--pw-font-body) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
    color: #334155 !important;
    padding: 13px 7px !important;
    position: relative;
    white-space: nowrap !important;
    transition: all 0.2s ease !important;
}

.pw-menu-shell #menu .pw-category-chevron {
    margin-left: 3px !important;
    font-size: 10px !important;
}

.pw-menu-shell #menu .navbar-nav>li>a:hover,
.pw-menu-shell #menu .navbar-nav>li.open>a {
    color: var(--pw-color-primary) !important;
    background: #f0f7ff !important;
}

.pw-menu-shell #menu .navbar-nav>li>a::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 6px;
    right: 6px;
    height: 2px;
    background: var(--pw-color-primary);
    opacity: 0;
    transform: scaleX(0);
    transition: all 0.2s ease;
}

.pw-menu-shell #menu .navbar-nav>li:hover>a::after,
.pw-menu-shell #menu .navbar-nav>li.open>a::after {
    opacity: 1;
    transform: scaleX(1);
}

.pw-menu-shell #menu .dropdown-menu {
    border: 1px solid #e2e8f0 !important;
    border-top: 3px solid var(--pw-color-primary) !important;
    border-radius: 0 0 6px 6px !important;
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.12) !important;
}

.pw-menu-shell #menu .dropdown-inner li a {
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    padding: 9px 18px !important;
}

.pw-menu-shell #menu .dropdown-inner li a:hover {
    color: var(--pw-color-primary) !important;
    background: #f0f7ff !important;
    padding-left: 22px !important;
}

.pw-menu-shell #menu .see-all {
    font-family: var(--pw-font-body) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--pw-color-primary) !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
}

/* ==========================================================
   RICH PRODUCT CARD STYLING & SPACING
   ========================================================== */

#content .product-layout,
.pwbs-slide {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 24px;
}

.product-thumb {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: var(--pw-card-shadow) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
}

.product-thumb:hover {
    border-color: #cbd5e1 !important;
    box-shadow: var(--pw-card-shadow-hover) !important;
    transform: translateY(-4px) !important;
}

.product-thumb .image {
    padding: 16px 14px 10px 14px !important;
    background: #ffffff !important;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.product-thumb .image a {
    display: block !important;
    width: 100%;
}

.product-thumb .image img {
    max-height: 185px !important;
    width: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    transition: transform 0.4s ease !important;
}

.product-thumb:hover .image img {
    transform: scale(1.05) !important;
}

.product-thumb .caption {
    padding: 12px 16px 16px 16px !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    min-height: 140px !important;
}

.product-thumb .caption h4,
.product-layout .caption h4 {
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 0 8px 0 !important;
    height: 42px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.product-thumb .caption h4 a,
.product-layout .caption h4 a {
    color: #1e293b !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.product-thumb .caption h4 a:hover,
.product-layout .caption h4 a:hover {
    color: var(--pw-color-primary) !important;
}

.product-thumb .caption p {
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    color: var(--pw-color-muted) !important;
    line-height: 1.45 !important;
    margin: 0 0 10px 0 !important;
    height: 38px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

/* Product Price styling from Typography Guide */
.product-thumb .price,
.product-info .price {
    font-family: var(--pw-font-body) !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: #0f172a !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding-top: 6px;
}

.product-thumb .price .price-new {
    color: #dc2626 !important;
    /* Rich clear red for sale */
    font-weight: 800 !important;
}

.product-thumb .price .price-old {
    color: #94a3b8 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    text-decoration: line-through !important;
    margin-left: 8px !important;
}

/* Product card action buttons (Add to Cart / Wishlist / Compare) */
.product-thumb .button-group {
    display: flex !important;
    align-items: stretch !important;
    border-top: 1px solid var(--pw-color-border) !important;
    background: #f8fafc !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.product-thumb .button-group button {
    border: none !important;
    background: transparent !important;
    color: #475569 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 11px 8px !important;
    line-height: 1.3 !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

/* "Add to Cart" main button */
.product-thumb .button-group button:first-child {
    flex: 1 1 auto !important;
    width: auto !important;
    background: #ffffff !important;
    color: var(--pw-color-primary) !important;
}

.product-thumb .button-group button:first-child:hover {
    background: var(--pw-color-primary) !important;
    color: #ffffff !important;
}

.product-thumb .button-group button:first-child .fa-shopping-cart {
    font-size: 14px;
}

/* Wishlist and Compare buttons */
.product-thumb .button-group button+button {
    flex: 0 0 44px !important;
    width: 44px !important;
    border-left: 1px solid var(--pw-color-border) !important;
    background: #f8fafc !important;
    color: #64748b !important;
}

.product-thumb .button-group button+button:hover {
    background: #f1f5f9 !important;
    color: var(--pw-color-primary) !important;
}

/* Category cards refinement */
.pwcs-card {
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    box-shadow: var(--pw-card-shadow) !important;
    transition: all 0.3s ease !important;
}

.pwcs-card:hover {
    box-shadow: var(--pw-card-shadow-hover) !important;
    transform: translateY(-4px) !important;
}

.pwcs-name-strip {
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    background: var(--pw-color-primary) !important;
}

/* Slider Controls (Arrows & Dots) */
.pwcs-arrows button,
.pwbs-arrows button {
    width: 38px !important;
    height: 38px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #1e293b !important;
    font-size: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.2s ease !important;
}

.pwcs-arrows button:hover,
.pwbs-arrows button:hover {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(8, 117, 209, 0.25) !important;
}

/* Benefits / Trust Bar */
.pw-benefits {
    border-radius: 8px;
    margin: 0 0 24px 0 !important;
    box-shadow: 0 4px 16px rgba(8, 117, 209, 0.12);
}

.pw-benefits__title {
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

.pw-benefits__description {
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
}

/* Footer Styling */
footer {
    background: #0f172a !important;
    color: #94a3b8 !important;
    padding-top: 48px !important;
    padding-bottom: 24px !important;
    margin-top: 44px !important;
    border-top: 3px solid var(--pw-color-primary) !important;
}

.pw-footer-grid {
    margin-bottom: 30px !important;
}

.pw-footer-col {
    margin-bottom: 24px !important;
}

footer h5 {
    font-family: var(--pw-font-heading) !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    color: #f8fafc !important;
    margin-top: 0 !important;
    margin-bottom: 18px !important;
    position: relative;
    padding-bottom: 8px;
}

footer h5::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 32px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary), var(--pw-color-accent));
    border-radius: 2px;
}

.pw-footer-arrow {
    display: none;
}

.pw-footer-links li {
    margin-bottom: 8px !important;
}

.pw-footer-links li a {
    font-family: var(--pw-font-body) !important;
    font-size: 13.5px !important;
    color: #94a3b8 !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    display: inline-block;
}

.pw-footer-links li a:hover {
    color: #ffffff !important;
    transform: translateX(4px);
}

/* Brand Column in Footer */
.pw-footer-brand-col {
    margin-bottom: 24px !important;
}

.pw-footer-logo-wrap {
    margin-bottom: 16px;
    display: block;
}

.pw-footer-logo-wrap a {
    display: inline-block;
    max-width: 100%;
}

.pw-footer-logo {
    max-height: 48px;
    max-width: 220px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}

.pw-footer-brand-name {
    margin: 0;
}

.pw-footer-brand-name a {
    color: #f8fafc !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.pw-footer-about-text {
    font-family: var(--pw-font-body) !important;
    font-size: 13.5px !important;
    line-height: 1.75 !important;
    color: #94a3b8 !important;
    margin: 0 !important;
    letter-spacing: 0.1px;
}

.pw-footer-about-text a {
    color: #f1f5f9 !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255, 255, 255, 0.3) !important;
    text-underline-offset: 3px;
    font-weight: 500;
    transition: all 0.2s ease;
}

.pw-footer-about-text a:hover {
    color: var(--pw-color-accent) !important;
    text-decoration-color: var(--pw-color-accent) !important;
}

/* Bottom copyright & payment bar */
.pw-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 24px;
    margin-top: 10px;
    border-top: 1px solid #1e293b;
    flex-wrap: wrap;
    gap: 16px;
}

.pw-footer-bottom-copy {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pw-footer-copy-text {
    margin: 0 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #94a3b8 !important;
}

.pw-footer-copy-text a {
    color: #f1f5f9 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.pw-footer-copy-text a:hover {
    color: var(--pw-color-accent) !important;
}

.pw-footer-dev-text {
    margin: 0 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 12.5px !important;
    color: #64748b !important;
}

.pw-footer-dev-text a {
    color: var(--pw-color-accent) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.pw-footer-dev-text a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.pw-footer-bottom-right {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.pw-payment-badges-row {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.pw-pay-badge-mini {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1e293b;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 4px;
    padding: 3px 4px;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.pw-pay-badge-mini:hover {
    background: #334155;
    border-color: rgba(255, 255, 255, 0.3);
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.pw-pay-badge-mini svg {
    display: block;
    border-radius: 2px;
}

.pw-footer-bottom-note {
    font-size: 12.5px;
    color: #10b981;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.2);
    padding: 4px 10px;
    border-radius: 20px;
}

.pw-footer-bottom-note i {
    color: #10b981;
}

/* ==========================================================
   MOBILE RESPONSIVE TYPOGRAPHY
   ========================================================== */

@media (max-width: 767px) {
    body {
        font-size: 14px !important;
    }

    h1,
    .h1 {
        font-size: 32px !important;
    }

    h2,
    .h2 {
        font-size: 26px !important;
    }

    h3,
    .h3 {
        font-size: 22px !important;
    }

    h4,
    .h4 {
        font-size: 18px !important;
    }

    #content>h3,
    .pwcs-heading,
    .pwbs-heading-row h3 {
        font-size: 24px !important;
    }

    .product-thumb .caption h4,
    .product-layout .caption h4 {
        font-size: 14px !important;
    }

    .product-thumb .price,
    .product-info .price {
        font-size: 18px !important;
    }

    .product-thumb .button-group button {
        padding: 9px 4px !important;
        font-size: 12px !important;
    }
}

/* ==========================================================
   HOMEPAGE SLIDER / BANNER CUSTOMIZATION
   - Remove bottom pagination dots
   - White circular left/right buttons with visible chevron icons
   ========================================================== */

/* 1. Remove slider bottom dots */
.slideshow .swiper-pagination,
.swiper-viewport .swiper-pagination,
.slideshow0.swiper-pagination,
.swiper-pagination-bullet {
    display: none !important;
}

.slideshow.swiper-viewport {
    margin-bottom: 24px !important;
    position: relative !important;
}

/* 2. Left & Right Navigation Buttons - White background, elevated, with icons */
.slideshow .swiper-pager,
.swiper-viewport .swiper-pager {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
    z-index: 10 !important;
}

.slideshow .swiper-button-prev,
.slideshow .swiper-button-next,
.swiper-viewport .swiper-button-prev,
.swiper-viewport .swiper-button-next {
    position: absolute !important;
    top: 50% !important;
    margin-top: -20px !important;
    transform: none !important;
    width: 40px !important;
    height: 40px !important;
    background-color: #ffffff !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 16px 16px !important;
    color: #1e293b !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 50% !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    transition: all 0.25s ease !important;
    z-index: 20 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* SVG Left Arrow */
.slideshow .swiper-button-prev,
.swiper-viewport .swiper-button-prev {
    left: 14px !important;
    right: auto !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

/* SVG Right Arrow */
.slideshow .swiper-button-next,
.swiper-viewport .swiper-button-next {
    right: 14px !important;
    left: auto !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231e293b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

.slideshow .swiper-button-prev:hover,
.swiper-viewport .swiper-button-prev:hover {
    background-color: var(--pw-color-primary, #087cc1) !important;
    border-color: var(--pw-color-primary, #087cc1) !important;
    box-shadow: 0 6px 16px rgba(8, 117, 209, 0.3) !important;
    transform: scale(1.06) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

.slideshow .swiper-button-next:hover,
.swiper-viewport .swiper-button-next:hover {
    background-color: var(--pw-color-primary, #087cc1) !important;
    border-color: var(--pw-color-primary, #087cc1) !important;
    box-shadow: 0 6px 16px rgba(8, 117, 209, 0.3) !important;
    transform: scale(1.06) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

/* Remove :before pseudo content to avoid duplication/offset */
.slideshow .swiper-button-prev:before,
.slideshow .swiper-button-next:before,
.swiper-viewport .swiper-button-prev:before,
.swiper-viewport .swiper-button-next:before {
    display: none !important;
    content: "" !important;
}

/* Unified styling for Category & Best Sellers header arrows (matching image-4) */
.pwcs-arrows button,
.pwbs-arrows button {
    width: 40px !important;
    height: 40px !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #1e293b !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.25s ease !important;
    padding: 0 !important;
    outline: none !important;
}

.pwcs-arrows button:hover,
.pwbs-arrows button:hover {
    background: var(--pw-color-primary, #087cc1) !important;
    color: #ffffff !important;
    border-color: var(--pw-color-primary, #087cc1) !important;
    box-shadow: 0 6px 16px rgba(8, 117, 209, 0.3) !important;
    transform: scale(1.06) !important;
}

.pwcs-arrows button svg,
.pwbs-arrows button svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    stroke: currentColor !important;
    stroke-width: 2.5 !important;
}

/* ==========================================================
   AUTHENTIC 4-PER-ROW TESTIMONIALS SECTION
   ========================================================== */

.pw-testimonials-section {
    margin: 0px 0 28px 0 !important;
    position: relative !important;
}

.pw-testimonials-header {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 20px !important;
    flex-wrap: wrap;
}

.pw-testimonials-title-group {
    flex: 1 1 auto;
}

.pw-testimonials-heading {
    font-family: var(--pw-font-heading) !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #0f172a !important;
    margin: 0 0 4px 0 !important;
    position: relative;
    padding-bottom: 6px;
}

.pw-testimonials-heading::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 44px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary), var(--pw-color-accent));
    border-radius: 2px;
}

.pw-testimonials-subtitle {
    margin: 0 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    color: var(--pw-color-muted) !important;
    font-weight: 400 !important;
}

.pw-testimonials-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.pw-btn-testimonials-view {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--pw-color-primary) !important;
    background: #f0f7ff !important;
    border: 1px solid #bae0fd !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pw-btn-testimonials-view:hover {
    background: var(--pw-color-primary) !important;
    color: #ffffff !important;
    border-color: var(--pw-color-primary) !important;
    box-shadow: 0 4px 12px rgba(8, 117, 209, 0.25) !important;
}

.pw-btn-testimonials-add {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 8px 14px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pw-btn-testimonials-add:hover {
    background: #f8fafc !important;
    color: var(--pw-color-text) !important;
}

/* Testimonial Carousel Items */
.pw-testimonials-carousel {
    position: relative !important;
}

.pw-testimonials-carousel .owl-wrapper-outer {
    padding: 8px 0 16px 0 !important;
}

.pw-testimonial-item {
    padding: 0 10px !important;
    height: 100% !important;
}

.pw-testimonial-card {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 12px !important;
    padding: 20px 18px 18px 18px !important;
    box-shadow: var(--pw-card-shadow) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 255px !important;
    position: relative !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    overflow: hidden !important;
}

.pw-testimonial-card:hover {
    border-color: #cbd5e1 !important;
    box-shadow: var(--pw-card-shadow-hover) !important;
    transform: translateY(-4px) !important;
}

/* Top Image & Avatar Header */
.pw-testimonial-top {
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;
    margin-bottom: 12px !important;
}

.pw-testimonial-avatar-wrap {
    position: relative !important;
    width: 48px !important;
    height: 48px !important;
    flex: 0 0 48px !important;
}

.pw-testimonial-avatar {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #e0f2fe !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
}

.pw-testimonial-initials {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #0875D1, #1e40af) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--pw-font-heading) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 2px 8px rgba(8, 117, 209, 0.25) !important;
}

.pw-verified-badge {
    position: absolute !important;
    bottom: -2px !important;
    right: -2px !important;
    width: 17px !important;
    height: 17px !important;
    background: #10b981 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 9px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15) !important;
}

.pw-testimonial-meta {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.pw-testimonial-author {
    margin: 0 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.pw-testimonial-date {
    display: block !important;
    font-family: var(--pw-font-body) !important;
    font-size: 11px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
}

/* Stars Rating */
.pw-testimonial-stars {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    margin-bottom: 10px !important;
}

.pw-testimonial-stars i.fa-star.active {
    color: #f59e0b !important;
    font-size: 13px !important;
}

.pw-testimonial-stars i.fa-star-o {
    color: #cbd5e1 !important;
    font-size: 13px !important;
}

.pw-verified-text {
    margin-left: 8px !important;
    font-family: var(--pw-font-body) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #059669 !important;
    background: #ecfdf5 !important;
    padding: 2px 7px !important;
    border-radius: 4px !important;
}

/* Testimonial Quote Body */
.pw-testimonial-body {
    position: relative !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
}

.pw-quote-icon {
    color: #e2e8f0 !important;
    font-size: 18px !important;
    margin-bottom: 4px !important;
    display: block !important;
}

.pw-testimonial-text {
    margin: 0 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #334155 !important;
    font-style: normal !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 4 !important;
    -webkit-box-orient: vertical !important;
}

/* ==========================================================
   PERFECTLY CENTERED OWL CAROUSEL BUTTONS FOR TESTIMONIALS
   ========================================================== */

.pw-testimonials-section .owl-controls {
    margin: 0 !important;
    position: static !important;
}

.pw-testimonials-section .owl-controls .owl-buttons {
    position: static !important;
}

.pw-testimonials-section .owl-controls .owl-buttons div,
.pw-testimonials-carousel .owl-buttons .owl-prev,
.pw-testimonials-carousel .owl-buttons .owl-next {
    position: absolute !important;
    top: 50% !important;
    margin-top: -20px !important;
    transform: none !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 50% !important;
    color: #1e293b !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    opacity: 0.98 !important;
    transition: all 0.25s ease !important;
    z-index: 25 !important;
    line-height: 1 !important;
}

.pw-testimonials-section .owl-controls .owl-buttons .owl-prev,
.pw-testimonials-carousel .owl-buttons .owl-prev {
    left: -16px !important;
    right: auto !important;
}

.pw-testimonials-section .owl-controls .owl-buttons .owl-next,
.pw-testimonials-carousel .owl-buttons .owl-next {
    right: -16px !important;
    left: auto !important;
}

.pw-testimonials-section .owl-controls .owl-buttons div:hover,
.pw-testimonials-carousel .owl-buttons .owl-prev:hover,
.pw-testimonials-carousel .owl-buttons .owl-next:hover {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 18px rgba(8, 117, 209, 0.35) !important;
    transform: scale(1.08) !important;
    opacity: 1 !important;
}

.pw-testimonials-section .owl-controls .owl-buttons div svg,
.pw-testimonials-carousel .owl-buttons svg {
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: auto !important;
}

.pw-testimonials-section .owl-controls .owl-buttons div:hover svg,
.pw-testimonials-carousel .owl-buttons:hover svg {
    stroke: #ffffff !important;
}

/* ==========================================================
   RIGHT-SIDE CART SLIDE-IN DRAWER
   Matches screenshot 3: Clean, crisp, full-height slide-over
   ========================================================== */

.pw-cart-overlay {
    position: fixed;
    inset: 0;
    z-index: 10095;
    display: block;
    background: rgba(15, 23, 42, 0.65);
    backdrop-filter: blur(2px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.pw-cart-overlay.is-open {
    opacity: 1;
    visibility: visible;
}

.pw-cart-drawer {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 10096;
    display: flex;
    flex-direction: column;
    width: min(92vw, 380px);
    max-width: 100%;
    height: 100%;
    overflow: hidden;
    color: #1e293b;
    background: #ffffff;
    box-shadow: -8px 0 28px rgba(0, 0, 0, 0.22);
    transform: translateX(105%);
    visibility: hidden;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s ease;
}

.pw-cart-drawer.is-open {
    transform: translateX(0);
    visibility: visible;
}

body.pw-cart-drawer-open {
    overflow: hidden !important;
}

/* Cart Drawer Header */
.pw-cart-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 56px;
    padding: 14px 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.pw-cart-drawer-title {
    margin: 0;
    font-family: var(--pw-font-heading);
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.5px;
    color: #0f172a;
    text-transform: uppercase;
}

.pw-cart-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: #64748b;
    background: transparent;
    border: none;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.2s ease;
}

.pw-cart-drawer-close:hover {
    color: #0f172a;
    background: #e2e8f0;
}

/* Cart Drawer Body & Products */
.pw-cart-drawer-body {
    flex: 1 1 auto;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
}

.pw-cart-drawer-body ul,
.pw-cart-drawer-body li {
    list-style: none;
    padding: 0;
    margin: 0;
}

.pw-cart-drawer-body table {
    width: 100% !important;
    margin-bottom: 16px !important;
    border-collapse: separate;
    border-spacing: 0;
}

.pw-cart-drawer-body .table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #f8fafc;
}

.pw-cart-drawer-body table td {
    padding: 10px 6px !important;
    vertical-align: middle !important;
    font-size: 13px !important;
    color: #334155;
    border-top: 1px solid #f1f5f9 !important;
}

.pw-cart-drawer-body table td a {
    color: #0f172a !important;
    font-weight: 600;
    text-decoration: none !important;
    font-size: 13px;
}

.pw-cart-drawer-body table td a:hover {
    color: var(--pw-color-primary) !important;
}

.pw-cart-drawer-body table td img {
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    max-width: 52px;
    height: auto;
}

.pw-cart-drawer-body .btn-danger {
    background: #fee2e2 !important;
    border-color: #fecaca !important;
    color: #dc2626 !important;
    border-radius: 50% !important;
    width: 26px;
    height: 26px;
    padding: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.pw-cart-drawer-body .btn-danger:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
}

/* Totals and Checkout section in Drawer */
.pw-cart-drawer-body .table-bordered {
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px;
    margin-top: 12px;
    background: #f8fafc;
}

.pw-cart-drawer-body .table-bordered td {
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 9px 12px !important;
    font-size: 13px !important;
}

.pw-cart-drawer-body p.text-right {
    margin-top: 16px;
    display: flex;
    gap: 10px;
    justify-content: stretch;
}

.pw-cart-drawer-body p.text-right a {
    flex: 1 1 50%;
    text-align: center;
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.pw-cart-drawer-body p.text-right a:first-child {
    background: #f1f5f9;
    color: #334155;
    border: 1px solid #cbd5e1;
}

.pw-cart-drawer-body p.text-right a:first-child:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.pw-cart-drawer-body p.text-right a:last-child {
    background: var(--pw-color-primary);
    color: #ffffff;
    border: 1px solid var(--pw-color-primary);
}

.pw-cart-drawer-body p.text-right a:last-child:hover {
    background: #0284c7;
    color: #ffffff;
}

/* Empty cart style */
.pw-cart-drawer-body p.text-center {
    padding: 30px 16px;
    color: #64748b;
    font-size: 14px;
    margin: auto 0;
}

/* ==========================================================
   PREMIUM CATEGORY PAGE DESIGN SYSTEM
   Matches Home Page Typography, Colors & Card Aesthetics
   ========================================================== */

.pw-category-page-container {
    padding-top: 18px !important;
    padding-bottom: 40px !important;
}

/* Modern Clean Breadcrumbs */
.pw-category-breadcrumb {
    background: transparent !important;
    padding: 0 0 16px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    font-size: 13px !important;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pw-category-breadcrumb li {
    display: inline-flex;
    align-items: center;
}

.pw-category-breadcrumb li a {
    color: #64748b !important;
    text-decoration: none !important;
    font-weight: 500;
    transition: color 0.2s ease;
}

.pw-category-breadcrumb li a:hover {
    color: var(--pw-color-primary) !important;
}

.pw-category-breadcrumb li+li:before {
    content: "›" !important;
    padding: 0 8px !important;
    color: #94a3b8 !important;
    font-size: 14px;
    font-weight: bold;
}

.pw-category-breadcrumb li:last-child a {
    color: #0f172a !important;
    font-weight: 600;
    pointer-events: none;
}

/* Category Hero Card */
.pw-category-hero-card {
    background: linear-gradient(135deg, #ffffff, #f8fafc) !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 14px !important;
    padding: 24px 28px !important;
    margin-bottom: 22px !important;
    box-shadow: var(--pw-card-shadow) !important;
    position: relative;
    overflow: hidden;
}

.pw-category-hero-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, var(--pw-color-primary), var(--pw-color-accent));
}

.pw-category-hero-body {
    display: flex;
    align-items: center;
    gap: 22px;
}

.pw-category-hero-thumb {
    flex: 0 0 84px;
    width: 84px;
    height: 84px;
    background: #ffffff;
    border: 1px solid var(--pw-color-border);
    border-radius: 12px;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.pw-category-hero-thumb img {
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

.pw-category-hero-text {
    flex: 1 1 auto;
}

.pw-category-title {
    font-family: var(--pw-font-heading) !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    letter-spacing: 0.3px !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.2 !important;
}

.pw-category-desc,
.pw-category-tagline {
    font-family: var(--pw-font-body) !important;
    font-size: 14px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.6 !important;
}

/* Subcategory Refine Chips */
.pw-refine-block {
    background: #ffffff;
    border: 1px solid var(--pw-color-border-card);
    border-radius: 10px;
    padding: 12px 16px;
    margin-bottom: 22px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.pw-refine-label {
    font-family: var(--pw-font-body);
    font-size: 13px;
    font-weight: 700;
    color: #334155;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.pw-refine-label i {
    color: var(--pw-color-primary);
}

.pw-refine-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pw-refine-chip {
    display: inline-block;
    padding: 6px 14px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    font-size: 12.5px;
    font-weight: 600;
    color: #334155 !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.pw-refine-chip:hover {
    background: var(--pw-color-primary);
    border-color: var(--pw-color-primary);
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(8, 117, 209, 0.25);
}

/* Unified Modern Controls Toolbar */
.pw-category-toolbar {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    padding: 12px 18px !important;
    margin-bottom: 24px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}

.pw-toolbar-left {
    display: flex;
    align-items: center;
    gap: 16px;
}

.pw-view-toggle .btn {
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    color: #64748b;
    border-radius: 6px !important;
    transition: all 0.2s ease;
}

.pw-view-toggle .btn:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.pw-view-toggle .btn.active {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 6px rgba(8, 117, 209, 0.3) !important;
}

.pw-compare-link {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.pw-compare-link:hover {
    color: var(--pw-color-primary) !important;
}

.pw-toolbar-right {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.pw-select-group {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.pw-select-group label {
    margin: 0;
    font-size: 13px;
    font-weight: 600;
    color: #475569;
    white-space: nowrap;
}

.pw-select-group select.form-control {
    height: 36px;
    padding: 4px 10px;
    font-size: 13px;
    font-weight: 500;
    color: #1e293b;
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    box-shadow: none;
    min-width: 140px;
}

.pw-select-group select.form-control:focus {
    border-color: var(--pw-color-primary);
    box-shadow: 0 0 0 2px rgba(8, 117, 209, 0.15);
}

/* Category Product Cards Grid (3 cards per row on Desktop) */
.pw-category-products-grid {
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.pw-category-products-grid>[class*="col-"] {
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 24px !important;
}

/* Category Product Card: Identical to Home Page Product Thumb */
#product-category .product-thumb {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: var(--pw-card-shadow) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
    margin-bottom: 0 !important;
}

#product-category .product-thumb:hover {
    border-color: #cbd5e1 !important;
    box-shadow: var(--pw-card-shadow-hover) !important;
    transform: translateY(-4px) !important;
}

#product-category .product-thumb .image {
    padding: 16px 14px 10px 14px !important;
    background: #ffffff !important;
    min-height: 200px !important;
    height: 200px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
}

#product-category .product-thumb .image a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

#product-category .product-thumb .image img {
    max-height: 180px !important;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    transition: transform 0.4s ease !important;
}

#product-category .product-thumb:hover .image img {
    transform: scale(1.06) !important;
}

#product-category .product-thumb .caption {
    padding: 12px 16px 16px 16px !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    min-height: 140px !important;
}

#product-category .product-thumb .caption h4 {
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 0 8px 0 !important;
    height: 42px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

#product-category .product-thumb .caption h4 a {
    color: #1e293b !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

#product-category .product-thumb .caption h4 a:hover {
    color: var(--pw-color-primary) !important;
}

#product-category .product-thumb .caption p {
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    color: var(--pw-color-muted) !important;
    line-height: 1.45 !important;
    margin: 0 0 10px 0 !important;
    height: 38px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

#product-category .product-thumb .price {
    font-family: var(--pw-font-body) !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: #0f172a !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding-top: 6px !important;
}

#product-category .product-thumb .price .price-new {
    color: #dc2626 !important;
    font-weight: 800 !important;
}

#product-category .product-thumb .price .price-old {
    color: #94a3b8 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    text-decoration: line-through !important;
    margin-left: 8px !important;
}

#product-category .product-thumb .price .price-tax {
    display: none !important;
}

#product-category .product-thumb .rating {
    margin-bottom: 6px !important;
    line-height: 1 !important;
}

#product-category .product-thumb .rating .fa-stack {
    font-size: 8px !important;
    width: 1.5em !important;
    height: 1.5em !important;
    line-height: 1.5em !important;
}

#product-category .product-thumb .rating .fa-star {
    color: #f59e0b !important;
}

#product-category .product-thumb .rating .fa-star-o {
    color: #cbd5e1 !important;
}

/* Category Button Group: Exact Match to Home Page */
#product-category .product-thumb .button-group {
    display: flex !important;
    align-items: stretch !important;
    border-top: 1px solid var(--pw-color-border) !important;
    background: #f8fafc !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#product-category .product-thumb .button-group button {
    border: none !important;
    background: transparent !important;
    color: #475569 !important;
    font-family: var(--pw-font-body) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 11px 8px !important;
    line-height: 1.3 !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

#product-category .product-thumb .button-group button:first-child {
    flex: 1 1 auto !important;
    width: auto !important;
    background: #ffffff !important;
    color: var(--pw-color-primary) !important;
}

#product-category .product-thumb .button-group button:first-child:hover {
    background: var(--pw-color-primary) !important;
    color: #ffffff !important;
}

#product-category .product-thumb .button-group button:first-child .fa-shopping-cart {
    font-size: 14px;
}

#product-category .product-thumb .button-group button+button {
    flex: 0 0 44px !important;
    width: 44px !important;
    border-left: 1px solid var(--pw-color-border) !important;
    background: #f8fafc !important;
    color: #64748b !important;
}

#product-category .product-thumb .button-group button+button:hover {
    background: #f1f5f9 !important;
    color: var(--pw-color-primary) !important;
}

/* List View Adaptation (when user clicks List View button) */
#product-category .product-layout.product-list {
    width: 100% !important;
}

@media (min-width: 768px) {
    #product-category .product-layout.product-list .product-thumb {
        flex-direction: row !important;
        align-items: stretch !important;
    }

    #product-category .product-layout.product-list .product-thumb .image {
        flex: 0 0 200px !important;
        width: 200px !important;
        min-height: 160px !important;
        height: auto !important;
    }

    #product-category .product-layout.product-list .product-thumb .caption {
        flex: 1 1 auto !important;
        padding: 16px 20px !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group {
        flex: 0 0 170px !important;
        flex-direction: column !important;
        border-top: none !important;
        border-left: 1px solid var(--pw-color-border) !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group button:first-child {
        flex: 1 1 auto !important;
        height: 50% !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group button+button {
        flex: 1 1 auto !important;
        width: 100% !important;
        height: 25% !important;
        border-left: none !important;
        border-top: 1px solid var(--pw-color-border) !important;
    }
}

/* Modern Pagination Bar */
.pw-category-pagination-row {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    padding: 14px 20px !important;
    margin-top: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

.pw-pagination-links ul.pagination {
    margin: 0 !important;
    display: flex !important;
    gap: 4px !important;
}

.pw-pagination-links ul.pagination>li>a,
.pw-pagination-links ul.pagination>li>span {
    border-radius: 6px !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 6px 12px !important;
    transition: all 0.2s ease !important;
}

.pw-pagination-links ul.pagination>li>a:hover {
    background: #f1f5f9 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
}

.pw-pagination-links ul.pagination>.active>span,
.pw-pagination-links ul.pagination>.active>a {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    color: #ffffff !important;
}

.pw-pagination-results {
    font-size: 13px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}

/* Sidebar Category Module Redesign */
.pw-sidebar-category-card {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    margin-bottom: 24px !important;
    box-shadow: var(--pw-card-shadow) !important;
}

.pw-sidebar-heading {
    background: linear-gradient(135deg, #0f172a, #1e293b) !important;
    color: #f8fafc !important;
    padding: 16px 20px !important;
    font-family: var(--pw-font-heading) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    border-bottom: 2px solid var(--pw-color-primary) !important;
}

.pw-sidebar-heading i {
    color: var(--pw-color-accent) !important;
}

.pw-sidebar-category-list {
    padding: 6px 0 !important;
}

.pw-sidebar-cat-group {
    border-bottom: 1px solid #f1f5f9;
}

.pw-sidebar-cat-group:last-child {
    border-bottom: 0;
}

.pw-sidebar-cat-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 18px !important;
    color: #334155 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pw-sidebar-cat-link:hover {
    color: var(--pw-color-primary) !important;
    background: #f8fafc !important;
    padding-left: 22px !important;
}

.pw-sidebar-cat-link.is-active {
    color: var(--pw-color-primary) !important;
    background: #eff6ff !important;
    border-left: 3px solid var(--pw-color-primary) !important;
}

.pw-cat-expand-icon {
    font-size: 12px !important;
    color: #94a3b8 !important;
}

.pw-sidebar-subcategories {
    background: #f8fafc !important;
    padding: 6px 0 6px 14px !important;
    border-top: 1px dashed #e2e8f0;
}

.pw-sidebar-subcat-link {
    display: block !important;
    padding: 6px 14px !important;
    color: #64748b !important;
    font-size: 13px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pw-sidebar-subcat-link:hover,
.pw-sidebar-subcat-link.is-active {
    color: var(--pw-color-primary) !important;
    font-weight: 700 !important;
    padding-left: 18px !important;
}

/* Sidebar Trust Value Guarantee Box */
.pw-sidebar-trust-box {
    padding: 18px 20px !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.pw-trust-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.pw-trust-item i {
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    background: #e0f2fe !important;
    color: var(--pw-color-primary) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    flex: 0 0 32px !important;
}

.pw-trust-item strong {
    display: block !important;
    font-size: 13px !important;
    color: #0f172a !important;
    line-height: 1.3 !important;
}

.pw-trust-item p {
    margin: 2px 0 0 0 !important;
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.3 !important;
}

/* Empty State Card */
.pw-empty-category-card {
    background: #ffffff;
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    padding: 50px 24px;
    text-align: center;
    margin: 20px 0;
}

.pw-empty-icon {
    font-size: 48px;
    color: #94a3b8;
    margin-bottom: 16px;
}

.pw-empty-category-card h3 {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 8px;
}

.pw-empty-category-card p {
    color: #64748b;
    font-size: 14px;
    max-width: 400px;
    margin: 0 auto 20px auto;
}

.pw-btn-continue {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    font-weight: 600 !important;
    padding: 10px 24px !important;
    border-radius: 6px !important;
}

/* Mobile responsive adjustments for Category */
@media (max-width: 767px) {
    .pw-category-hero-card {
        padding: 18px !important;
    }

    .pw-category-title {
        font-size: 24px !important;
    }

    .pw-category-hero-thumb {
        width: 60px !important;
        height: 60px !important;
        flex: 0 0 60px !important;
    }

    .pw-category-toolbar {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 12px 14px !important;
        gap: 12px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 12px !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    }

    .pw-toolbar-left {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding-bottom: 10px !important;
        border-bottom: 1px solid #f1f5f9 !important;
    }

    .pw-view-toggle {
        display: inline-flex !important;
        gap: 6px !important;
    }

    .pw-view-toggle .btn {
        width: 34px !important;
        height: 34px !important;
        border-radius: 8px !important;
        border: 1px solid #cbd5e1 !important;
        background: #f8fafc !important;
        color: #64748b !important;
    }

    .pw-view-toggle .btn.active {
        background: var(--pw-color-primary, #087cc1) !important;
        border-color: var(--pw-color-primary, #087cc1) !important;
        color: #ffffff !important;
        box-shadow: 0 2px 6px rgba(8, 124, 193, 0.3) !important;
    }

    .pw-compare-link {
        font-size: 12px !important;
        color: #64748b !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        padding: 6px 12px !important;
        border-radius: 20px !important;
    }

    .pw-toolbar-right {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .pw-select-group {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        gap: 10px !important;
    }

    .pw-select-group label {
        font-size: 12.5px !important;
        font-weight: 700 !important;
        color: #475569 !important;
        flex-shrink: 0 !important;
        min-width: 65px !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
    }

    .pw-select-group select.form-control {
        flex: 1 1 auto !important;
        width: auto !important;
        height: 36px !important;
        border-radius: 8px !important;
        border: 1px solid #cbd5e1 !important;
        background-color: #f8fafc !important;
        font-size: 13px !important;
        color: #0f172a !important;
        font-weight: 600 !important;
        box-shadow: none !important;
    }

    .pw-category-products-grid {
        margin-left: -6px !important;
        margin-right: -6px !important;
    }

    .pw-category-products-grid>[class*="col-"] {
        padding-left: 6px !important;
        padding-right: 6px !important;
        margin-bottom: 14px !important;
    }

    #product-category .product-thumb .image {
        min-height: 150px !important;
        height: 150px !important;
        padding: 10px !important;
    }

    #product-category .product-thumb .image img {
        max-height: 130px !important;
    }

    #product-category .product-thumb .caption {
        padding: 10px 12px 12px 12px !important;
    }

    #product-category .product-thumb .caption h4 {
        font-size: 13px !important;
        height: 36px !important;
    }

    #product-category .product-thumb .price {
        font-size: 17px !important;
    }

    #product-category .product-thumb .button-group button:first-child span {
        display: none !important;
    }

    /* Mobile List View Specific Fixes */
    #product-category .product-layout.product-list {
        width: 100% !important;
        margin-bottom: 16px !important;
    }

    #product-category .product-layout.product-list .product-thumb {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: stretch !important;
        height: auto !important;
    }

    #product-category .product-layout.product-list .product-thumb .image {
        flex: 0 0 110px !important;
        width: 110px !important;
        min-height: 110px !important;
        height: 110px !important;
        padding: 8px !important;
    }

    #product-category .product-layout.product-list .product-thumb .image img {
        max-height: 95px !important;
    }

    #product-category .product-layout.product-list .product-thumb .caption {
        flex: 1 1 calc(100% - 110px) !important;
        width: calc(100% - 110px) !important;
        padding: 10px 12px !important;
        min-height: 110px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }

    #product-category .product-layout.product-list .product-thumb .caption h4 {
        height: auto !important;
        max-height: 38px !important;
        margin-bottom: 4px !important;
        font-size: 14px !important;
    }

    #product-category .product-layout.product-list .product-thumb .caption p {
        display: none !important;
    }

    #product-category .product-layout.product-list .product-thumb .caption .price {
        margin-top: 4px !important;
        padding-top: 0 !important;
        font-size: 18px !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group {
        display: flex !important;
        flex-direction: row !important;
        width: 100% !important;
        flex: 0 0 100% !important;
        border-top: 1px solid var(--pw-color-border) !important;
        border-left: none !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group button:first-child {
        flex: 1 1 auto !important;
        height: 40px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group button:first-child span {
        display: inline !important;
        font-size: 12px !important;
    }

    #product-category .product-layout.product-list .product-thumb .button-group button+button {
        flex: 0 0 44px !important;
        width: 44px !important;
        height: 40px !important;
        border-top: none !important;
        border-left: 1px solid var(--pw-color-border) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Mobile Product Grids: 1 product per row on mobile */
    .pw-category-products-grid>[class*="col-"],
    #common-home .row>.product-layout,
    #content>.row>.product-layout,
    .product-layout.col-xs-12 {
        width: 100% !important;
        float: none !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        margin-bottom: 18px !important;
    }

    #common-home .row,
    #content>.row,
    .pw-category-products-grid {
        margin-left: -10px !important;
        margin-right: -10px !important;
    }

    #common-home .product-thumb .image,
    #content .product-layout .product-thumb .image,
    #product-category .product-thumb .image {
        min-height: 180px !important;
        height: 180px !important;
        padding: 12px !important;
    }

    #common-home .product-thumb .image img,
    #content .product-layout .product-thumb .image img,
    #product-category .product-thumb .image img {
        max-height: 160px !important;
    }

    #common-home .product-thumb .caption,
    #content .product-layout .product-thumb .caption,
    #product-category .product-thumb .caption {
        padding: 12px 14px !important;
    }

    #common-home .product-thumb .caption h4,
    #content .product-layout .product-thumb .caption h4,
    #product-category .product-thumb .caption h4 {
        font-size: 15px !important;
        height: auto !important;
        line-height: 1.4 !important;
        overflow: hidden !important;
        margin-bottom: 8px !important;
    }

    #common-home .product-thumb .caption p:not(.price),
    #content .product-layout .product-thumb .caption p:not(.price),
    #product-category .product-thumb .caption p:not(.price) {
        display: none !important;
    }

    #common-home .product-thumb .price,
    #content .product-layout .product-thumb .price,
    #product-category .product-thumb .price {
        font-size: 18px !important;
    }

    #common-home .product-thumb .button-group button:first-child span,
    #content .product-layout .product-thumb .button-group button:first-child span {
        display: inline !important;
    }

    /* ==========================================================
       MOBILE FOOTER ACCORDION (Single column & Clean Dropdown)
       ========================================================== */
    .pw-footer-grid {
        margin-bottom: 15px !important;
    }

    .pw-footer-brand-col {
        margin-bottom: 24px !important;
    }

    .pw-footer-accordion {
        margin-bottom: 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        padding-bottom: 10px;
    }

    .pw-footer-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        cursor: pointer !important;
        margin-bottom: 0 !important;
        padding: 6px 0 10px 0 !important;
        user-select: none;
    }

    .pw-footer-arrow {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.05);
        color: #94a3b8;
        font-size: 12px;
        transition: transform 0.3s ease, background 0.2s ease, color 0.2s ease;
    }

    .pw-footer-accordion.is-open .pw-footer-arrow {
        transform: rotate(180deg);
        background: var(--pw-color-primary);
        color: #ffffff;
    }

    .pw-footer-accordion .pw-footer-links {
        display: none;
        padding-top: 10px;
        padding-bottom: 8px;
        animation: pwFooterFade 0.25s ease forwards;
    }

    .pw-footer-accordion.is-open .pw-footer-links {
        display: block !important;
    }

    .pw-footer-accordion .pw-footer-links li {
        margin-bottom: 10px !important;
    }

    .pw-footer-accordion .pw-footer-links li a {
        font-size: 14px !important;
        color: #cbd5e1 !important;
        display: inline-block;
        padding: 2px 0;
    }

    @keyframes pwFooterFade {
        from {
            opacity: 0;
            transform: translateY(-6px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}

/* ==========================================================
   PREMIUM PRODUCT DETAIL PAGE DESIGN SYSTEM
   Matches Home Page Typography, Colors & Elevated Aesthetics
   ========================================================== */

.pw-product-page-container {
    padding-top: 16px !important;
    padding-bottom: 50px !important;
}

/* Clean Modern Breadcrumbs */
.pw-product-breadcrumb {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    font-size: 13px !important;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    flex: 1 1 auto;
}

.pw-product-nav-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
    width: 100%;
    box-sizing: border-box;
}

.pw-product-prev-next {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.pw-pn-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    color: #475569 !important;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
    white-space: nowrap;
    transition: all 0.2s ease;
}

.pw-pn-btn:hover {
    background: var(--pw-color-primary, #087cc1);
    border-color: var(--pw-color-primary, #087cc1);
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(8, 124, 193, 0.25);
}

.pw-pn-btn i {
    font-size: 14px;
    font-weight: bold;
}

@media (max-width: 767px) {
    .pw-product-nav-bar {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        padding-bottom: 10px !important;
        margin-bottom: 14px !important;
    }

    .pw-product-breadcrumb {
        width: 100% !important;
        font-size: 12px !important;
        white-space: normal !important;
        line-height: 1.6 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 2px 4px !important;
        padding: 8px 12px !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 8px !important;
        box-sizing: border-box !important;
    }

    .pw-product-breadcrumb li {
        padding: 0 !important;
        font-size: 12px !important;
    }

    .pw-product-breadcrumb li+li:before {
        padding: 0 4px !important;
        font-size: 12px !important;
        color: #94a3b8 !important;
    }

    .pw-product-prev-next {
        width: 100% !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }

    .pw-pn-btn {
        flex: 1 1 0% !important;
        justify-content: center !important;
        padding: 7px 10px !important;
        font-size: 11.5px !important;
        text-align: center !important;
    }
}

.pw-product-breadcrumb li {
    display: inline-flex;
    align-items: center;
    position: relative;
    padding: 2px 0 !important;
}

.pw-product-breadcrumb li:after,
.pw-product-breadcrumb>li:after,
.pw-category-breadcrumb li:after,
.pw-category-breadcrumb>li:after {
    display: none !important;
}

.pw-product-breadcrumb li a {
    color: #64748b !important;
    text-decoration: none !important;
    font-weight: 500;
    transition: color 0.2s ease;
}

.pw-product-breadcrumb li a:hover {
    color: var(--pw-color-primary) !important;
}

.pw-product-breadcrumb li+li:before {
    content: "›" !important;
    padding: 0 6px !important;
    color: #94a3b8 !important;
    font-size: 14px;
    font-weight: bold;
}

.pw-product-breadcrumb li:last-child a {
    color: #0f172a !important;
    font-weight: 600;
    pointer-events: none;
}

/* Main Grid Rhythm */
.pw-product-main-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

/* --- Left Column: Image Showcase --- */
.pw-gallery-card {
    background: #ffffff;
    border: 1px solid var(--pw-color-border-card);
    border-radius: 14px;
    padding: 24px;
    box-shadow: var(--pw-card-shadow);
    margin-bottom: 20px;
    text-align: center;
}

.pw-gallery-thumbnails {
    margin-bottom: 0;
}

.pw-main-thumb-wrap {
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 380px;
}

.pw-main-thumb {
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    display: block;
    max-width: 100%;
    margin: auto;
    transition: transform 0.3s ease;
}

.pw-main-thumb:hover {
    transform: scale(1.02);
}

.pw-main-thumb img {
    max-height: 400px;
    width: auto;
    margin: auto;
    object-fit: contain;
}

.pw-additional-images-row {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.pw-additional-item {
    margin-bottom: 0 !important;
}

.pw-thumb-sub {
    width: 72px;
    height: 72px;
    border: 2px solid var(--pw-color-border) !important;
    border-radius: 8px !important;
    padding: 4px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.pw-thumb-sub:hover,
.pw-thumb-sub:focus {
    border-color: var(--pw-color-primary) !important;
    box-shadow: 0 0 0 3px rgba(8, 117, 209, 0.15) !important;
    transform: translateY(-2px);
}

.pw-thumb-sub img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}

/* --- Trust Badges Strip under gallery --- */
.pw-product-trust-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    background: #f8fafc;
    border: 1px solid var(--pw-color-border);
    border-radius: 12px;
    padding: 16px 14px;
    margin-bottom: 28px;
}

.pw-trust-badge-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pw-trust-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: 50%;
    background: rgba(8, 117, 209, 0.1);
    color: var(--pw-color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}

.pw-trust-text {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
}

.pw-trust-text strong {
    font-size: 12.5px;
    color: #0f172a;
    font-weight: 700;
}

.pw-trust-text span {
    font-size: 11px;
    color: #64748b;
}

/* --- Product Detail Tabs (Description & Reviews) --- */
.pw-product-tabs-wrapper {
    background: #ffffff;
    border: 1px solid var(--pw-color-border-card);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: var(--pw-card-shadow);
    margin-bottom: 30px;
}

.pw-product-nav-tabs {
    background: #f8fafc !important;
    border-bottom: 1px solid var(--pw-color-border) !important;
    padding: 10px 16px 0 16px !important;
    display: flex;
    gap: 8px;
}

.pw-product-nav-tabs>li>a {
    border: none !important;
    border-radius: 8px 8px 0 0 !important;
    color: #64748b !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 18px !important;
    margin-right: 0 !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    display: flex;
    align-items: center;
    gap: 8px;
}

.pw-product-nav-tabs>li>a i {
    font-size: 14px;
}

.pw-product-nav-tabs>li.active>a,
.pw-product-nav-tabs>li.active>a:focus,
.pw-product-nav-tabs>li.active>a:hover {
    color: var(--pw-color-primary) !important;
    background: #ffffff !important;
    border-top: 3px solid var(--pw-color-primary) !important;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.03);
}

.pw-product-tab-content {
    padding: 24px 28px !important;
    font-size: 14.5px;
    line-height: 1.7;
    color: #334155;
}

.pw-spec-table {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--pw-color-border) !important;
}

.pw-spec-label {
    width: 35%;
    font-weight: 600;
    color: #1e293b;
    background: #f8fafc;
}

.pw-spec-val {
    color: #475569;
}

.pw-write-review-title {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin-top: 0;
    margin-bottom: 18px;
}

.pw-input-modern {
    border: 1px solid var(--pw-color-border) !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

.pw-input-modern:focus {
    border-color: var(--pw-color-primary) !important;
    box-shadow: 0 0 0 3px rgba(8, 117, 209, 0.15) !important;
}

.pw-rating-radios {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #f8fafc;
    border: 1px solid var(--pw-color-border);
    border-radius: 8px;
    padding: 10px 16px;
    margin-top: 6px;
    width: fit-content;
}

.pw-rating-radios label {
    margin: 0;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
}

.pw-btn-primary {
    background: var(--pw-color-primary) !important;
    border-color: var(--pw-color-primary) !important;
    padding: 10px 24px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
}

/* --- Right Column: The Buy Box Card --- */
.pw-buy-box-card {
    background: #ffffff;
    border: 1px solid var(--pw-color-border-card);
    border-radius: 14px;
    padding: 24px 28px;
    box-shadow: var(--pw-card-shadow);
    position: relative;
    margin-bottom: 30px;
}

.pw-buybox-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.pw-buybox-badges {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.pw-stock-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #f0f7ff;
    color: var(--pw-color-primary, #0875D1);
    border: 1px solid #bae6fd;
    font-size: 12px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
}

.pw-stock-badge i {
    color: var(--pw-color-primary, #0875D1);
}

.pw-model-badge {
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 20px;
}

.pw-quick-action-btns {
    display: flex;
    gap: 6px;
}

.pw-btn-icon {
    width: 36px;
    height: 36px;
    border-radius: 50% !important;
    border: 1px solid var(--pw-color-border) !important;
    background: #f8fafc !important;
    color: #64748b !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    transition: all 0.2s ease !important;
}

.pw-btn-icon:hover {
    color: var(--pw-color-primary) !important;
    background: #ffffff !important;
    border-color: var(--pw-color-primary) !important;
    transform: translateY(-2px);
}

.pw-product-title {
    font-family: var(--pw-font-heading) !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1.35 !important;
    margin: 0 0 12px 0 !important;
}

.pw-product-rating-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--pw-color-border);
}

.pw-rating-stars {
    color: #f59e0b;
    font-size: 14px;
    display: flex;
    gap: 2px;
}

.pw-rating-stars .active {
    color: #f59e0b;
}

.pw-rating-count-link,
.pw-write-review-link {
    font-size: 13px;
    color: #64748b;
    text-decoration: none;
    font-weight: 500;
}

.pw-rating-count-link:hover,
.pw-write-review-link:hover {
    color: var(--pw-color-primary);
}

.pw-dot-sep {
    color: #cbd5e1;
}

/* Pricing Section */
.pw-price-box {
    margin-bottom: 20px;
}

.pw-main-price-row {
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-wrap: wrap;
}

.pw-price-current {
    font-family: var(--pw-font-heading);
    font-size: 32px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1;
}

.pw-price-special {
    color: #e11d48;
}

.pw-price-old {
    font-size: 18px;
    color: #94a3b8;
    text-decoration: line-through;
    font-weight: 500;
}

.pw-price-discount-tag {
    background: #ffe4e6;
    color: #e11d48;
    font-size: 12px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 6px;
    text-transform: uppercase;
}

.pw-tax-info {
    font-size: 12.5px;
    color: #64748b;
    margin-top: 4px;
}

.pw-points-info {
    font-size: 12.5px;
    color: #059669;
    font-weight: 600;
    margin-top: 4px;
}

/* Wholesale Bulk Discount Badges */
.pw-bulk-discounts-box {
    background: #f0f7ff;
    border: 1px solid #bfdbfe;
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 22px;
}

.pw-bulk-title {
    font-size: 12.5px;
    font-weight: 700;
    color: #1e40af;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.pw-discount-tiers {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.pw-discount-tier-chip {
    background: #ffffff;
    border: 1px solid #93c5fd;
    border-radius: 8px;
    padding: 6px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.pw-tier-qty {
    font-size: 11px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
}

.pw-tier-price {
    font-size: 14px;
    font-weight: 800;
    color: var(--pw-color-primary);
}

.pw-tier-price small {
    font-size: 10px;
    font-weight: 500;
    color: #64748b;
}

/* Options Styling in Buy Box */
#product {
    margin-top: 10px;
}

#product hr {
    display: none;
}

#product h3 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 14px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid var(--pw-color-border) !important;
}

#product .form-group {
    margin-bottom: 16px;
}

#product .form-group label.control-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
}

#product .form-control {
    border: 1px solid var(--pw-color-border) !important;
    border-radius: 8px !important;
    height: 42px;
    font-size: 13.5px !important;
    color: #1e293b !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

#product textarea.form-control {
    height: auto !important;
}

#product .form-control:focus {
    border-color: var(--pw-color-primary) !important;
    box-shadow: 0 0 0 3px rgba(8, 117, 209, 0.15) !important;
}

/* Quantity Stepper & Add to Cart */
.pw-cart-action-group {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid var(--pw-color-border);
}

.pw-qty-label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #334155;
    margin-bottom: 8px;
}

.pw-qty-cart-flex {
    display: flex;
    align-items: stretch;
    gap: 12px;
}

.pw-qty-stepper {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--pw-color-border);
    border-radius: 8px;
    background: #f8fafc;
    overflow: hidden;
    height: 48px;
    flex: 0 0 120px;
}

.pw-stepper-btn {
    width: 38px;
    height: 100%;
    border: none;
    background: transparent;
    color: #475569;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
}

.pw-stepper-btn:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.pw-stepper-input {
    width: 44px !important;
    height: 100% !important;
    border: none !important;
    background: #ffffff !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.pw-btn-add-cart {
    flex: 1 1 auto;
    height: 48px !important;
    background: linear-gradient(135deg, var(--pw-color-primary), #0284c7) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-family: var(--pw-font-body) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    box-shadow: 0 4px 14px rgba(8, 117, 209, 0.35) !important;
    transition: all 0.25s ease !important;
    cursor: pointer !important;
}

.pw-btn-add-cart:hover {
    background: linear-gradient(135deg, #0284c7, var(--pw-color-primary)) !important;
    box-shadow: 0 6px 20px rgba(8, 117, 209, 0.45) !important;
    transform: translateY(-2px);
}

.pw-min-order-note {
    font-size: 12px;
    color: #64748b;
    margin-top: 8px;
}

/* Secure Checkout Box */
.pw-secure-checkout-box {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid var(--pw-color-border);
    text-align: center;
}

.pw-secure-title {
    font-size: 12px;
    font-weight: 600;
    color: #64748b;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.pw-secure-title i {
    color: #059669;
}

.pw-pay-icons-mini {
    display: flex;
    gap: 6px;
    justify-content: center;
    flex-wrap: wrap;
}

.pw-pay-chip {
    background: #f1f5f9;
    border: 1px solid var(--pw-color-border);
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    color: #475569;
    padding: 2px 8px;
}

/* Related Products Header & Grid */
.pw-related-products-section {
    margin-top: 36px;
    margin-bottom: 30px;
}

.pw-related-header {
    margin-bottom: 20px;
}

.pw-related-title {
    font-family: var(--pw-font-heading) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #0f172a !important;
    margin: 0 !important;
    position: relative;
    padding-bottom: 8px;
}

.pw-related-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 36px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary), var(--pw-color-accent));
    border-radius: 2px;
}

.pw-related-subtitle {
    font-size: 13.5px;
    color: #64748b;
    margin: 8px 0 0 0;
    font-weight: 500;
}

.pw-related-grid {
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.pw-related-col {
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 24px !important;
}

.pw-related-thumb {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card) !important;
    border-radius: 10px !important;
    box-shadow: var(--pw-card-shadow) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
}

.pw-related-thumb:hover {
    border-color: #cbd5e1 !important;
    box-shadow: var(--pw-card-shadow-hover) !important;
    transform: translateY(-4px) !important;
}

.pw-related-thumb .image {
    padding: 18px 16px 12px 16px !important;
    background: #ffffff !important;
    min-height: 220px !important;
    height: 220px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
}

.pw-related-thumb .image a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

.pw-related-thumb .image img {
    max-height: 195px !important;
    max-width: 92% !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    transition: transform 0.4s ease !important;
}

.pw-related-thumb:hover .image img {
    transform: scale(1.08) !important;
}

/* Tags Chips */
.pw-product-tags-row {
    margin-top: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 14px 18px;
    background: #ffffff;
    border: 1px solid var(--pw-color-border);
    border-radius: 10px;
}

.pw-tag-label {
    font-size: 13px;
    font-weight: 700;
    color: #334155;
}

.pw-product-tag-chip {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 20px;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.pw-product-tag-chip:hover {
    background: var(--pw-color-primary);
    color: #ffffff !important;
    border-color: var(--pw-color-primary);
}

/* --- Mobile Responsiveness for Product Page --- */
@media (max-width: 991px) {
    .pw-product-trust-strip {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}

@media (max-width: 767px) {
    .pw-gallery-card {
        padding: 14px;
    }

    .pw-main-thumb-wrap {
        min-height: 260px;
    }

    .pw-main-thumb img {
        max-height: 280px;
    }

    .pw-product-trust-strip {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px;
    }

    .pw-buy-box-card {
        padding: 18px 16px;
    }

    .pw-product-title {
        font-size: 21px !important;
    }

    .pw-price-current {
        font-size: 26px;
    }

    .pw-product-tab-content {
        padding: 18px 16px !important;
    }

    .pw-qty-cart-flex {
        flex-direction: row;
    }

    .pw-related-col {
        width: 100% !important;
    }
}

/* ==========================================================
   AJAX LIVE SEARCH AUTO-SUGGEST DROPDOWN (DESKTOP & MOBILE)
   ========================================================== */
.pw-live-search-box {
    position: relative !important;
    width: 100% !important;
    display: block !important;
}

.pw-live-search-results {
    position: absolute !important;
    top: calc(100% + 4px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 10099 !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 8px 10px -6px rgba(0, 0, 0, 0.1) !important;
    max-height: 420px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

.pw-live-search-list {
    list-style: none !important;
    padding: 6px 0 !important;
    margin: 0 !important;
}

.pw-live-search-item {
    padding: 0 !important;
    border-bottom: 1px solid #f1f5f9 !important;
    transition: background-color 0.15s ease !important;
}

.pw-live-search-item:last-child {
    border-bottom: none !important;
}

.pw-live-search-item:hover,
.pw-live-search-item.is-selected {
    background-color: #f8fafc !important;
}

.pw-live-search-link {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 14px !important;
    text-decoration: none !important;
    color: #1e293b !important;
}

.pw-live-search-thumb {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    padding: 2px !important;
    overflow: hidden !important;
}

.pw-live-search-thumb img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

.pw-live-search-info {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.pw-live-search-name {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin-bottom: 3px !important;
}

.pw-live-search-price-wrap {
    display: flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    font-size: 13px !important;
    line-height: 1 !important;
}

.pw-live-search-price {
    font-weight: 700 !important;
    color: var(--pw-color-primary, #087cc1) !important;
}

.pw-live-search-special {
    font-weight: 800 !important;
    color: #dc2626 !important;
}

.pw-live-search-old {
    font-size: 11px !important;
    color: #94a3b8 !important;
    text-decoration: line-through !important;
}

.pw-live-search-footer {
    display: block !important;
    text-align: center !important;
    padding: 10px 14px !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--pw-color-primary, #087cc1) !important;
    text-decoration: none !important;
    transition: background-color 0.15s ease !important;
}

.pw-live-search-footer:hover {
    background: #f1f5f9 !important;
    text-decoration: underline !important;
}

.pw-live-search-empty {
    padding: 20px 16px !important;
    text-align: center !important;
    color: #64748b !important;
    font-size: 13px !important;
}

/* ==========================================================
   WHOLESALE & FREE SHIPPING MINI-CART DROPDOWN PANEL
   ========================================================== */
/* ==========================================================
   WHOLESALE & FREE SHIPPING MINI-CART DROPDOWN PANEL
   ========================================================== */
#cart .dropdown-menu.pw-cart-dropdown-panel {
    min-width: 440px !important;
    width: 440px !important;
    max-width: 95vw !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 20px 40px -6px rgba(15, 23, 42, 0.22) !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    right: 0 !important;
    left: auto !important;
    background: #ffffff !important;
}

#cart .dropdown-menu.pw-cart-dropdown-panel li>div {
    min-width: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

#cart .dropdown-menu.pw-cart-dropdown-panel li {
    width: 100% !important;
    overflow: hidden !important;
}

/* Free Shipping Status Bar */
.pw-cart-fs-bar-wrap {
    padding: 14px 18px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
    list-style: none !important;
}

.pw-cart-fs-status {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    color: #334155 !important;
    margin-bottom: 8px !important;
}

.pw-cart-fs-status i {
    color: var(--pw-color-primary, #087cc1) !important;
    font-size: 15px !important;
}

.pw-cart-fs-status.is-qualified {
    color: #059669 !important;
}

.pw-cart-fs-status.is-qualified i {
    color: #059669 !important;
}

.pw-cart-fs-progress {
    height: 8px !important;
    background: #e2e8f0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

.pw-cart-fs-progress-fill {
    height: 100% !important;
    background: linear-gradient(90deg, var(--pw-color-primary, #087cc1), #10b981) !important;
    border-radius: 6px !important;
    transition: width 0.4s ease !important;
}

/* Cart Items Scroll List & Modern Card */
.pw-cart-items-scroll {
    max-height: 340px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pw-cart-items-list {
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pw-cart-card {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    width: 100% !important;
    position: relative !important;
    transition: background-color 0.15s ease !important;
}

.pw-cc-top-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.pw-cart-card:hover {
    background-color: #f8fafc !important;
}

.pw-cc-thumb {
    flex: 0 0 54px !important;
    width: 54px !important;
    height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 3px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.pw-cc-thumb a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

.pw-cc-thumb img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}

.pw-cc-details {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 0 !important;
}

.pw-cc-name {
    display: block !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    margin-bottom: 3px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.pw-cc-name:hover {
    color: var(--pw-color-primary, #087cc1) !important;
    text-decoration: underline !important;
}

.pw-cc-options {
    margin-bottom: 4px !important;
}

.pw-cc-opt-line {
    font-size: 11.5px !important;
    color: #64748b !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.pw-cc-opt-name {
    color: #475569 !important;
    font-weight: 600 !important;
}

.pw-cc-meta {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    color: #64748b !important;
    margin-top: 2px !important;
}

.pw-cc-qty-pill {
    background: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    padding: 2px 7px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
}

.pw-cc-unit-price {
    color: #475569 !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
}

.pw-cc-right {
    flex: 0 0 auto !important;
    text-align: right !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 5px !important;
    padding-left: 8px !important;
    min-width: 65px !important;
}

.pw-cc-total {
    font-size: 14.5px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    letter-spacing: -0.2px !important;
}

.pw-cc-remove {
    background: transparent !important;
    border: none !important;
    color: #94a3b8 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    padding: 4px 6px !important;
    border-radius: 6px !important;
    transition: all 0.15s ease !important;
    line-height: 1 !important;
}

.pw-cc-remove:hover {
    color: #ef4444 !important;
    background-color: #fee2e2 !important;
}

/* Cart Totals & Checkout Actions */
.pw-cart-summary-li {
    list-style: none !important;
    background: #f8fafc !important;
    border-top: 1px solid #e2e8f0 !important;
    padding: 14px 18px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.pw-cart-summary-box {
    width: 100% !important;
    box-sizing: border-box !important;
}

.pw-cart-totals-list {
    margin-bottom: 12px !important;
    width: 100% !important;
}

.pw-cart-total-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 13px !important;
    color: #475569 !important;
    margin-bottom: 5px !important;
}

.pw-cart-total-row:last-child {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    border-top: 1px dashed #cbd5e1 !important;
    padding-top: 8px !important;
    margin-top: 6px !important;
}

.pw-cart-actions-row {
    display: flex !important;
    gap: 10px !important;
    width: 100% !important;
}

.pw-btn-cart-view {
    flex: 1 1 45% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px !important;
    background: #ffffff !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #334155 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pw-btn-cart-view:hover {
    background: #f1f5f9 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
    text-decoration: none !important;
}

.pw-btn-cart-checkout {
    flex: 1 1 55% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 10px !important;
    background: linear-gradient(135deg, var(--pw-color-primary, #087cc1), #0284c7) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(8, 124, 193, 0.3) !important;
    transition: all 0.2s ease !important;
}

.pw-btn-cart-checkout:hover {
    box-shadow: 0 6px 18px rgba(8, 124, 193, 0.45) !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Empty Cart State */
.pw-cart-empty-box {
    padding: 32px 20px !important;
    text-align: center !important;
}

.pw-cart-empty-icon {
    font-size: 36px !important;
    color: #94a3b8 !important;
    margin-bottom: 12px !important;
}

.pw-cart-empty-msg {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 6px !important;
}

.pw-cart-empty-sub {
    font-size: 12.5px !important;
    color: #64748b !important;
    margin-bottom: 0 !important;
}

/* ==========================================================
   ELEVATED TOAST NOTIFICATION POPUPS (SUCCESS & ERROR)
   ========================================================== */
.pw-toast-container {
    position: fixed !important;
    top: 24px !important;
    right: 24px !important;
    z-index: 100999 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    max-width: 420px !important;
    width: calc(100% - 32px) !important;
    pointer-events: none !important;
}

.pw-toast {
    pointer-events: auto !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    padding: 16px 18px !important;
    box-shadow: 0 14px 34px -4px rgba(15, 23, 42, 0.2), 0 8px 12px -4px rgba(15, 23, 42, 0.08) !important;
    border-left: 5px solid #10b981 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    transform: translateY(-20px);
    opacity: 0;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.pw-toast.is-visible {
    transform: translateY(0);
    opacity: 1;
}

.pw-toast.pw-toast-error {
    border-left-color: #ef4444 !important;
}

.pw-toast-icon {
    font-size: 22px !important;
    line-height: 1 !important;
    color: #10b981 !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}

.pw-toast.pw-toast-error .pw-toast-icon {
    color: #ef4444 !important;
}

.pw-toast-content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.pw-toast-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 3px !important;
}

.pw-toast-msg {
    font-size: 13px !important;
    color: #475569 !important;
    line-height: 1.45 !important;
    margin: 0 !important;
}

.pw-toast-msg a {
    color: var(--pw-color-primary, #087cc1) !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

.pw-toast-close {
    background: transparent !important;
    border: none !important;
    font-size: 18px !important;
    line-height: 1 !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    transition: color 0.15s ease !important;
}

.pw-toast-close:hover {
    color: #0f172a !important;
}

@media (max-width: 767px) {
    .pw-toast-container {
        top: 14px !important;
        right: 14px !important;
        left: 14px !important;
        width: auto !important;
    }
}

/* ==========================================================
   PRODUCT BUY-BOX FREE SHIPPING & WHOLESALE PERK
   ========================================================== */
.pw-buybox-shipping-perk {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: #f0f7ff !important;
    border: 1px solid #bfdbfe !important;
    border-radius: 10px !important;
    padding: 12px 14px !important;
    margin: 16px 0 18px 0 !important;
}

.pw-bb-perk-icon {
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 36px !important;
    background: #dbeafe !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--pw-color-primary, #0875D1) !important;
    font-size: 16px !important;
}

.pw-bb-perk-body {
    flex: 1 1 auto !important;
}

.pw-bb-perk-title {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e3a8a !important;
    line-height: 1.3 !important;
    margin-bottom: 2px !important;
}

.pw-bb-perk-sub {
    font-size: 12px !important;
    color: #3b82f6 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
}

.pw-bb-perk-icon.is-qualified {
    background: var(--pw-color-primary, #0875D1) !important;
    color: #ffffff !important;
}

.pw-bb-fs-bar {
    height: 6px !important;
    background: #dbeafe !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    margin-top: 6px !important;
    width: 100% !important;
}

.pw-bb-fs-fill {
    height: 100% !important;
    background: linear-gradient(90deg, #38bdf8, var(--pw-color-primary, #0875D1)) !important;
    border-radius: 4px !important;
    transition: width 0.4s ease !important;
}

/* Dynamic Wholesale Bulk Nudge Box in Buy-Box */
.pw-bulk-nudge-box {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    background: #fffbeb !important;
    border: 1.5px solid #fde68a !important;
    border-radius: 10px !important;
    padding: 12px 14px !important;
    margin: 0 0 18px 0 !important;
    box-shadow: 0 2px 6px rgba(245, 158, 11, 0.08) !important;
}

.pw-bn-icon {
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
    background: #fef3c7 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #d97706 !important;
    font-size: 15px !important;
}

.pw-bn-content {
    flex: 1 1 auto !important;
}

.pw-bn-title {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #92400e !important;
    line-height: 1.35 !important;
    margin-bottom: 3px !important;
}

.pw-bn-title strong {
    color: #b45309 !important;
}

.pw-bn-sub {
    font-size: 11.5px !important;
    color: #a16207 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
}

/* Cart Item Discount Nudge Chip */
.pw-cc-discount-fullwidth {
    flex: 1 1 100% !important;
    width: 100% !important;
    margin-top: 2px !important;
}

.pw-cc-discount-nudge {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    gap: 6px !important;
    background: #fffbeb !important;
    border: 1px solid #fde68a !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 11.5px !important;
    color: #92400e !important;
    line-height: 1.25 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    box-shadow: 0 1px 2px rgba(217, 119, 6, 0.08) !important;
}

.pw-cc-discount-nudge i {
    color: #d97706 !important;
    font-size: 11.5px !important;
    flex-shrink: 0 !important;
}

.pw-cc-discount-nudge strong {
    color: #b45309 !important;
    font-weight: 700 !important;
}

/* ==========================================================
   PREMIUM SHOPPING CART PAGE STYLING
   ========================================================== */
.pw-cart-page-container {
    padding-top: 16px !important;
    padding-bottom: 60px !important;
}

.pw-cart-nav-bar {
    margin-bottom: 20px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.pw-cart-alert {
    border-radius: 10px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    margin-bottom: 18px !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05) !important;
}

/* Cart Page Free Shipping Banner (Screenshot 3) */
.pw-cartpage-fs-banner {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04) !important;
}

.pw-cp-fs-content {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 10px !important;
}

.pw-cp-fs-icon {
    flex: 0 0 38px !important;
    width: 38px !important;
    height: 38px !important;
    background: #e0f2fe !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--pw-color-primary, #087cc1) !important;
    font-size: 17px !important;
}

.pw-cp-fs-icon.is-qualified {
    background: #dcfce7 !important;
    color: #10b981 !important;
}

.pw-cp-fs-text {
    flex: 1 1 auto !important;
}

.pw-cp-fs-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    line-height: 1.3 !important;
    margin-bottom: 2px !important;
}

.pw-cp-fs-title strong {
    color: var(--pw-color-primary, #087cc1) !important;
}

.pw-cp-fs-sub {
    font-size: 12.5px !important;
    color: #64748b !important;
    margin: 0 !important;
}

.pw-cp-fs-progress-track {
    height: 8px !important;
    background: #e2e8f0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    width: 100% !important;
}

.pw-cp-fs-progress-fill {
    height: 100% !important;
    background: linear-gradient(90deg, var(--pw-color-primary, #087cc1), #10b981) !important;
    border-radius: 6px !important;
    transition: width 0.4s ease !important;
}

/* Cart Page Header */
.pw-cartpage-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
}

.pw-cartpage-title {
    font-family: 'Barlow Condensed', var(--pw-font-family, sans-serif) !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 !important;
}

.pw-cartpage-weight {
    font-size: 16px !important;
    color: #94a3b8 !important;
    font-weight: 600 !important;
}

.pw-cartpage-continue-top {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--pw-color-primary, #087cc1) !important;
    text-decoration: none !important;
}

.pw-cartpage-continue-top:hover {
    text-decoration: underline !important;
}

/* Items Card Table */
.pw-cartpage-items-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04) !important;
    margin-bottom: 25px !important;
}

.pw-cartpage-items-head {
    display: flex !important;
    align-items: center !important;
    padding: 14px 20px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    color: #475569 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.pw-ci-head-prod {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.pw-ci-head-qty {
    flex: 0 0 160px !important;
    text-align: center !important;
}

.pw-ci-head-price {
    flex: 0 0 100px !important;
    text-align: right !important;
}

.pw-ci-head-total {
    flex: 0 0 110px !important;
    text-align: right !important;
}

.pw-cartpage-item-row {
    display: flex !important;
    align-items: center !important;
    padding: 18px 20px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    gap: 16px !important;
    transition: background-color 0.15s ease !important;
}

.pw-cartpage-item-row:last-child {
    border-bottom: none !important;
}

.pw-cartpage-item-row:hover {
    background-color: #fafbfc !important;
}

.pw-cir-thumb {
    flex: 0 0 70px !important;
    width: 70px !important;
    height: 70px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    padding: 4px !important;
}

.pw-cir-thumb img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

.pw-cir-gift-icon {
    color: #94a3b8 !important;
}

.pw-cir-details {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.pw-cir-name {
    display: block !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    text-decoration: none !important;
    line-height: 1.35 !important;
    margin-bottom: 4px !important;
}

.pw-cir-name:hover {
    color: var(--pw-color-primary, #087cc1) !important;
}

.pw-cir-stock-alert {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #ef4444 !important;
    margin-left: 6px !important;
}

.pw-cir-options {
    margin-bottom: 6px !important;
}

.pw-cir-opt-line {
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.35 !important;
}

.pw-cir-opt-label {
    font-weight: 600 !important;
    color: #475569 !important;
}

.pw-cir-reward,
.pw-cir-recurring {
    font-size: 11.5px !important;
    color: #059669 !important;
    margin-bottom: 4px !important;
}

/* Cart Page Discount Chip (Screenshot 2 Match) */
.pw-cir-discount-chip {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    gap: 6px !important;
    background: #fffbeb !important;
    border: 1px solid #fde68a !important;
    border-radius: 6px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    color: #92400e !important;
    line-height: 1.25 !important;
    margin-top: 6px !important;
}

.pw-cir-discount-chip i {
    color: #d97706 !important;
}

.pw-cir-discount-chip strong {
    color: #b45309 !important;
    font-weight: 800 !important;
}

/* Quantity Controls in Cart Row */
.pw-cir-qty {
    flex: 0 0 160px !important;
    display: flex !important;
    justify-content: center !important;
}

.pw-cir-qty-group {
    display: inline-flex !important;
    align-items: center !important;
    background: #ffffff !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    padding: 2px !important;
}

.pw-cir-qty-input {
    width: 50px !important;
    height: 34px !important;
    border: none !important;
    text-align: center !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    box-shadow: none !important;
    padding: 0 4px !important;
}

.pw-cir-qty-input:focus {
    outline: none !important;
    box-shadow: none !important;
}

.pw-cir-btn-update {
    background: #f1f5f9 !important;
    border: none !important;
    color: #475569 !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.15s ease !important;
}

.pw-cir-btn-update:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
}

.pw-cir-btn-remove {
    background: transparent !important;
    border: none !important;
    color: #94a3b8 !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    transition: all 0.15s ease !important;
    margin-left: 2px !important;
}

.pw-cir-btn-remove:hover {
    background: #fee2e2 !important;
    color: #ef4444 !important;
}

.pw-cir-unit-price {
    flex: 0 0 100px !important;
    text-align: right !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #475569 !important;
}

.pw-cir-total {
    flex: 0 0 110px !important;
    text-align: right !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

.pw-cir-mobile-label {
    display: none !important;
}

/* Summary Card */
.pw-cartpage-summary-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05) !important;
    position: sticky !important;
    top: 20px !important;
}

.pw-cp-summary-title {
    font-family: 'Barlow Condensed', var(--pw-font-family, sans-serif) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 18px 0 !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.pw-cp-totals-table {
    margin-bottom: 18px !important;
}

.pw-cp-total-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 0 !important;
    font-size: 13.5px !important;
    color: #475569 !important;
}

.pw-cp-total-row.is-grand-total {
    border-top: 1.5px dashed #cbd5e1 !important;
    padding-top: 14px !important;
    margin-top: 8px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

.pw-cp-total-row.is-grand-total .pw-cptr-val {
    color: var(--pw-color-primary, #087cc1) !important;
    font-size: 20px !important;
}

.pw-cp-savings-note {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    background: #f0fdf4 !important;
    border: 1px solid #bbf7d0 !important;
    border-radius: 8px !important;
    padding: 10px 12px !important;
    font-size: 11.5px !important;
    color: #166534 !important;
    line-height: 1.35 !important;
    margin-bottom: 18px !important;
}

.pw-cp-savings-note i {
    color: #16a34a !important;
    font-size: 13px !important;
    margin-top: 2px !important;
}

.pw-btn-cartpage-checkout {
    background: linear-gradient(135deg, var(--pw-color-primary, #087cc1), #0284c7) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 6px 18px rgba(8, 124, 193, 0.35) !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

.pw-btn-cartpage-checkout:hover {
    box-shadow: 0 8px 24px rgba(8, 124, 193, 0.45) !important;
    transform: translateY(-2px) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

.pw-cp-continue-wrap {
    text-align: center !important;
    margin-top: 14px !important;
    margin-bottom: 18px !important;
}

.pw-cp-continue-link {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-decoration: none !important;
}

.pw-cp-continue-link:hover {
    color: #0f172a !important;
    text-decoration: underline !important;
}

.pw-cp-trust-block {
    border-top: 1px solid #f1f5f9 !important;
    padding-top: 16px !important;
    text-align: center !important;
}

.pw-cp-trust-title {
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    margin-bottom: 8px !important;
}

/* Coupon & Voucher Accordion */
.pw-cartpage-modules-wrap {
    margin-top: 20px !important;
}

.pw-cartpage-sec-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 12px !important;
}

.pw-cartpage-modules-wrap .panel-default {
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    margin-bottom: 10px !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

.pw-cartpage-modules-wrap .panel-heading {
    background: #f8fafc !important;
    padding: 12px 16px !important;
}

.pw-cartpage-modules-wrap .panel-title a {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #334155 !important;
    text-decoration: none !important;
    display: block !important;
}

/* Responsive Layout */
@media (max-width: 767px) {
    .pw-cartpage-items-head {
        display: none !important;
    }

    .pw-cartpage-item-row {
        flex-wrap: wrap !important;
        padding: 14px !important;
        gap: 12px !important;
    }

    .pw-cir-thumb {
        flex: 0 0 54px !important;
        width: 54px !important;
        height: 54px !important;
    }

    .pw-cir-details {
        flex: 1 1 calc(100% - 70px) !important;
    }

    .pw-cir-qty {
        flex: 1 1 auto !important;
        justify-content: flex-start !important;
    }

    .pw-cir-unit-price,
    .pw-cir-total {
        flex: 0 0 auto !important;
        text-align: left !important;
    }

    .pw-cir-mobile-label {
        display: inline !important;
        font-weight: normal !important;
        color: #94a3b8 !important;
        font-size: 12px !important;
    }

    .pw-cartpage-summary-card {
        margin-top: 20px !important;
        position: static !important;
    }
}

/* ==========================================================
   CHECKOUT PAGE ELEVATED STYLING
   ========================================================== */
.pw-checkout-page-container {
    padding-top: 15px !important;
    padding-bottom: 50px !important;
}

.pw-checkout-fs-banner {
    margin-bottom: 20px !important;
}

/* Confirm Order Table Item Discount Chip */
.pw-confirm-prod-name {
    font-weight: 700 !important;
    color: #0f172a !important;
    text-decoration: none !important;
    font-size: 14.5px !important;
    display: inline-block !important;
    margin-bottom: 4px !important;
}

.pw-confirm-prod-name:hover {
    color: var(--pw-color-primary, #087cc1) !important;
}

.pw-confirm-options {
    margin-top: 2px !important;
    margin-bottom: 4px !important;
}

.pw-confirm-opt-line {
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.4 !important;
}

.pw-confirm-discount-wrap {
    margin-top: 8px !important;
}

.pw-confirm-discount-chip {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    gap: 6px !important;
    background: #fffbeb !important;
    border: 1px solid #fde68a !important;
    border-radius: 6px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    color: #92400e !important;
    line-height: 1.25 !important;
}

.pw-confirm-discount-chip i {
    color: #d97706 !important;
}

.pw-confirm-discount-chip strong {
    color: #b45309 !important;
    font-weight: 800 !important;
}

/* Checkout Page Heading */
#checkout-checkout h1 {
    font-family: var(--pw-font-heading, "Barlow Condensed", sans-serif) !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #0f172a !important;
    margin: 0 0 20px 0 !important;
    padding-bottom: 8px;
    position: relative;
}

#checkout-checkout h1::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 44px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary, #087cc1), var(--pw-color-accent, #b99a60));
    border-radius: 2px;
}

/* Checkout Modern Accordion Panel */
#checkout-checkout #accordion .panel-default {
    border-radius: 10px !important;
    border: 1px solid #e2e8f0 !important;
    margin-bottom: 14px !important;
    background: #ffffff !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    overflow: hidden !important;
    transition: all 0.2s ease !important;
}

#checkout-checkout #accordion .panel-default:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.07) !important;
}

#checkout-checkout #accordion .panel-heading {
    background: #f8fafc !important;
    padding: 15px 20px !important;
    border-bottom: 1px solid transparent !important;
    transition: background 0.2s ease !important;
}

#checkout-checkout #accordion .panel-heading a {
    color: #0f172a !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

#checkout-checkout #accordion .panel-heading h4.panel-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 !important;
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
}

/* When panel is active/open */
#checkout-checkout #accordion .panel-default:has(.panel-collapse.in),
#checkout-checkout #accordion .panel-default.is-active {
    border-color: #93c5fd !important;
    box-shadow: 0 4px 18px rgba(8, 124, 193, 0.12) !important;
}

#checkout-checkout #accordion .panel-default:has(.panel-collapse.in) .panel-heading {
    background: #f0f7ff !important;
    border-bottom-color: #e2e8f0 !important;
}

#checkout-checkout #accordion .panel-body {
    padding: 24px !important;
    background: #ffffff !important;
    font-size: 14px !important;
    color: #334155 !important;
}

/* Forms & inputs inside checkout */
#checkout-checkout .form-control {
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    height: 42px !important;
    padding: 8px 14px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    transition: all 0.2s ease !important;
}

#checkout-checkout textarea.form-control {
    height: auto !important;
}

#checkout-checkout .form-control:focus {
    border-color: var(--pw-color-primary, #087cc1) !important;
    box-shadow: 0 0 0 3px rgba(8, 124, 193, 0.15) !important;
}

#checkout-checkout .control-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
}

#checkout-checkout .radio,
#checkout-checkout .checkbox {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
    font-size: 13.5px !important;
    color: #334155 !important;
}

#checkout-checkout .radio label,
#checkout-checkout .checkbox label {
    font-weight: 500 !important;
}

/* Primary checkout step buttons */
#checkout-checkout .btn-primary {
    background: linear-gradient(135deg, #087cc1 0%, #035384 100%) !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 10px 24px !important;
    color: #ffffff !important;
    letter-spacing: 0.3px !important;
    box-shadow: 0 4px 12px rgba(8, 124, 193, 0.25) !important;
    transition: all 0.2s ease !important;
}

#checkout-checkout .btn-primary:hover {
    background: linear-gradient(135deg, #035384 0%, #023859 100%) !important;
    box-shadow: 0 6px 16px rgba(8, 124, 193, 0.35) !important;
    transform: translateY(-1px) !important;
}

#checkout-checkout .btn-default {
    background: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    color: #475569 !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
}

#checkout-checkout .btn-default:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
}

/* Confirm Order table polish inside Step 6 */
#checkout-checkout .table-bordered {
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

#checkout-checkout .table-bordered>thead>tr>th {
    background: #f8fafc !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding: 12px 14px !important;
}

#checkout-checkout .table-bordered>tbody>tr>td,
#checkout-checkout .table-bordered>tfoot>tr>td {
    padding: 12px 14px !important;
    font-size: 13.5px !important;
    vertical-align: middle !important;
    border-color: #f1f5f9 !important;
}

#checkout-checkout .table-bordered>tfoot>tr:last-child>td {
    font-weight: 800 !important;
    font-size: 16px !important;
    color: var(--pw-color-primary, #087cc1) !important;
    background: #f8fafc !important;
}

/* ==========================================================
   SEARCH PAGE MODERN DESIGN (MATCHING CATEGORY & HOME PAGE)
   ========================================================== */
.pw-search-page-container {
    padding-top: 15px !important;
    padding-bottom: 50px !important;
}

.pw-search-hero-card {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card, #e2e8f0) !important;
    border-radius: 12px !important;
    padding: 24px 28px !important;
    margin-bottom: 24px !important;
    box-shadow: var(--pw-card-shadow, 0 4px 16px rgba(15, 23, 42, 0.05)) !important;
}

.pw-search-title {
    font-family: var(--pw-font-heading, "Barlow Condensed", sans-serif) !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #0f172a !important;
    margin: 0 0 6px 0 !important;
}

.pw-search-tagline {
    font-size: 14px !important;
    color: #64748b !important;
    margin-bottom: 20px !important;
}

.pw-search-form-card {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 16px 18px !important;
}

.pw-search-field-label {
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    color: #475569 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.pw-search-query-group .form-control {
    height: 42px !important;
    border: 1px solid #cbd5e1 !important;
    border-right: none !important;
    border-radius: 6px 0 0 6px !important;
    font-size: 14px !important;
    padding: 8px 14px !important;
}

.pw-btn-search-submit {
    height: 42px !important;
    border-radius: 0 6px 6px 0 !important;
    background: linear-gradient(135deg, var(--pw-color-primary, #087cc1) 0%, #035384 100%) !important;
    border: none !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    padding: 0 18px !important;
    box-shadow: none !important;
}

.pw-search-category-select {
    height: 42px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    font-size: 13.5px !important;
    color: #0f172a !important;
    background: #ffffff !important;
}

.pw-search-checkboxes-col {
    padding-top: 26px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.pw-search-checkbox {
    font-size: 12.5px !important;
    font-weight: 500 !important;
    color: #475569 !important;
    margin: 0 !important;
}

.pw-search-results-heading-row {
    margin-bottom: 14px !important;
}

.pw-search-results-title {
    font-family: var(--pw-font-heading, "Barlow Condensed", sans-serif) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #0f172a !important;
    margin: 0 !important;
    position: relative;
    padding-bottom: 8px;
}

.pw-search-results-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 36px;
    height: 3px;
    background: linear-gradient(90deg, var(--pw-color-primary, #087cc1), var(--pw-color-accent, #b99a60));
    border-radius: 2px;
}

/* Products Grid in Search Page (Same as Home / Category) */
.pw-search-products-grid {
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.pw-search-products-grid>[class*="col-"] {
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 24px !important;
}

#product-search .product-thumb {
    background: #ffffff !important;
    border: 1px solid var(--pw-color-border-card, #e2e8f0) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: var(--pw-card-shadow, 0 4px 16px rgba(15, 23, 42, 0.05)) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
    margin-bottom: 0 !important;
}

#product-search .product-thumb:hover {
    border-color: #cbd5e1 !important;
    box-shadow: var(--pw-card-shadow-hover, 0 8px 24px rgba(8, 124, 193, 0.15)) !important;
    transform: translateY(-4px) !important;
}

#product-search .product-thumb .image {
    padding: 16px 14px 10px 14px !important;
    background: #ffffff !important;
    min-height: 200px !important;
    height: 200px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
}

#product-search .product-thumb .image a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

#product-search .product-thumb .image img {
    max-height: 180px !important;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    transition: transform 0.4s ease !important;
}

#product-search .product-thumb:hover .image img {
    transform: scale(1.06) !important;
}

#product-search .product-thumb .caption {
    padding: 12px 16px 16px 16px !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    min-height: 140px !important;
}

#product-search .product-thumb .caption h4 {
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 0 8px 0 !important;
    height: 42px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

#product-search .product-thumb .caption h4 a {
    color: #1e293b !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

#product-search .product-thumb .caption h4 a:hover {
    color: var(--pw-color-primary, #087cc1) !important;
}

#product-search .product-thumb .caption p {
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
    font-size: 13px !important;
    color: #64748b !important;
    line-height: 1.45 !important;
    margin: 0 0 10px 0 !important;
    height: 38px !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

#product-search .product-thumb .price {
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: #0f172a !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding-top: 6px !important;
}

#product-search .product-thumb .price .price-new {
    color: #dc2626 !important;
    font-weight: 800 !important;
}

#product-search .product-thumb .price .price-old {
    color: #94a3b8 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    text-decoration: line-through !important;
    margin-left: 8px !important;
}

#product-search .product-thumb .price .price-tax {
    display: none !important;
}

#product-search .product-thumb .rating {
    margin-bottom: 6px !important;
    line-height: 1 !important;
}

#product-search .product-thumb .rating .fa-stack {
    font-size: 8px !important;
    width: 1.5em !important;
    height: 1.5em !important;
    line-height: 1.5em !important;
}

#product-search .product-thumb .rating .fa-star {
    color: #f59e0b !important;
}

#product-search .product-thumb .rating .fa-star-o {
    color: #cbd5e1 !important;
}

/* Search Page Product Thumb Action Buttons: Identical to Home Page */
#product-search .product-thumb .button-group {
    display: flex !important;
    align-items: stretch !important;
    border-top: 1px solid var(--pw-color-border, #e2e8f0) !important;
    background: #f8fafc !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#product-search .product-thumb .button-group button {
    border: none !important;
    background: transparent !important;
    color: #475569 !important;
    font-family: var(--pw-font-body, "Inter", sans-serif) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 11px 8px !important;
    line-height: 1.3 !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

#product-search .product-thumb .button-group button:first-child {
    flex: 1 1 auto !important;
    width: auto !important;
    background: #ffffff !important;
    color: var(--pw-color-primary, #087cc1) !important;
}

#product-search .product-thumb .button-group button:first-child:hover {
    background: var(--pw-color-primary, #087cc1) !important;
    color: #ffffff !important;
}

#product-search .product-thumb .button-group button:first-child .fa-shopping-cart {
    font-size: 14px;
}

#product-search .product-thumb .button-group button+button {
    flex: 0 0 44px !important;
    width: 44px !important;
    border-left: 1px solid var(--pw-color-border, #e2e8f0) !important;
    background: #f8fafc !important;
    color: #64748b !important;
}

#product-search .product-thumb .button-group button+button:hover {
    background: #f1f5f9 !important;
    color: var(--pw-color-primary, #087cc1) !important;
}

/* List view adaptation for search */
#product-search .product-layout.product-list {
    width: 100% !important;
}

@media (min-width: 768px) {
    #product-search .product-layout.product-list .product-thumb {
        flex-direction: row !important;
        align-items: stretch !important;
    }

    #product-search .product-layout.product-list .product-thumb .image {
        flex: 0 0 200px !important;
        width: 200px !important;
        min-height: 160px !important;
        height: auto !important;
    }

    #product-search .product-layout.product-list .product-thumb .caption {
        flex: 1 1 auto !important;
        padding: 16px 20px !important;
    }

    #product-search .product-layout.product-list .product-thumb .button-group {
        flex: 0 0 170px !important;
        flex-direction: column !important;
        border-top: none !important;
        border-left: 1px solid var(--pw-color-border, #e2e8f0) !important;
    }

    #product-search .product-layout.product-list .product-thumb .button-group button:first-child {
        flex: 1 1 auto !important;
        height: 50% !important;
    }

    #product-search .product-layout.product-list .product-thumb .button-group button+button {
        flex: 1 1 auto !important;
        width: 100% !important;
        height: 25% !important;
        border-left: none !important;
        border-top: 1px solid var(--pw-color-border, #e2e8f0) !important;
    }
}

/* Empty State Card */
.pw-search-empty-card {
    background: #ffffff;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    padding: 48px 24px;
    text-align: center;
    margin: 20px 0;
}

.pw-search-empty-card .pw-sec-icon {
    font-size: 40px;
    color: #94a3b8;
    margin-bottom: 12px;
}

.pw-search-empty-card h3 {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 6px 0;
}

.pw-search-empty-card p {
    font-size: 14px;
    color: #64748b;
    margin: 0;
}

/* ==========================================================
   PREMIUM MY ACCOUNT SUITE & DASHBOARD STYLES
   ========================================================== */

/* Account Container & Breadcrumbs polish */
div[id^="account-"] {
    padding-top: 10px !important;
    padding-bottom: 60px !important;
}

div[id^="account-"] .breadcrumb {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 10px 16px !important;
    margin-bottom: 24px !important;
}

div[id^="account-"] .breadcrumb>li>a {
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

div[id^="account-"] .breadcrumb>li+li:before {
    color: #94a3b8 !important;
}

/* Account Hero Header */
.pw-acc-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
    border-radius: 12px !important;
    padding: 24px 28px !important;
    margin-bottom: 28px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08) !important;
    position: relative;
    overflow: hidden;
}

.pw-acc-hero::after {
    content: "";
    position: absolute;
    right: -20px;
    top: -20px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, rgba(8, 124, 209, 0.25) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
}

.pw-acc-hero-content {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    position: relative;
    z-index: 1;
}

.pw-acc-avatar {
    width: 58px !important;
    height: 58px !important;
    background: linear-gradient(135deg, #087cd1 0%, #0284c7 100%) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 26px !important;
    box-shadow: 0 4px 12px rgba(8, 124, 209, 0.35) !important;
    flex-shrink: 0 !important;
}

.pw-acc-hero-info {
    flex: 1 1 auto !important;
}

.pw-acc-title {
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    margin: 0 0 4px 0 !important;
    font-family: var(--pw-font-heading, "Montserrat", sans-serif) !important;
    letter-spacing: -0.3px !important;
}

.pw-acc-subtitle {
    color: #94a3b8 !important;
    font-size: 13.5px !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

/* Sections */
.pw-acc-section {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 24px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    transition: box-shadow 0.2s ease !important;
}

.pw-acc-section:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

.pw-acc-sec-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.pw-acc-sec-icon {
    width: 36px !important;
    height: 36px !important;
    background: #f0f7ff !important;
    color: #087cd1 !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 17px !important;
    flex-shrink: 0 !important;
}

.pw-acc-sec-titles {
    flex: 1 1 auto !important;
}

.pw-acc-sec-title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 2px 0 !important;
    letter-spacing: -0.2px !important;
}

.pw-acc-sec-desc {
    font-size: 12.5px !important;
    color: #64748b !important;
    display: block !important;
}

/* Dashboard Cards Grid */
.pw-acc-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 14px !important;
}

.pw-acc-grid.is-single-col {
    grid-template-columns: 1fr !important;
}

.pw-acc-card {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.pw-acc-card:hover {
    background: #ffffff !important;
    border-color: #087cd1 !important;
    box-shadow: 0 4px 14px rgba(8, 124, 209, 0.12) !important;
    transform: translateY(-2px) !important;
}

.pw-acc-card-icon {
    width: 44px !important;
    height: 44px !important;
    background: var(--card-theme-bg, #e0f2fe) !important;
    color: var(--card-theme-color, #087cd1) !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    flex-shrink: 0 !important;
    transition: transform 0.2s ease !important;
}

.pw-acc-card:hover .pw-acc-card-icon {
    transform: scale(1.08) !important;
}

.pw-acc-card-info {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

.pw-acc-card-title {
    display: block !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    line-height: 1.35 !important;
    margin-bottom: 2px !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.pw-acc-card:hover .pw-acc-card-title {
    color: #087cd1 !important;
}

.pw-acc-card-sub {
    display: block !important;
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.35 !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.pw-acc-card-arrow {
    color: #cbd5e1 !important;
    font-size: 13px !important;
    transition: all 0.2s ease !important;
    padding-left: 4px !important;
    flex-shrink: 0 !important;
}

.pw-acc-card:hover .pw-acc-card-arrow {
    color: #087cd1 !important;
    transform: translateX(3px) !important;
}

@media (max-width: 767px) {
    .pw-acc-section {
        padding: 16px 14px !important;
        border-radius: 10px !important;
        margin-bottom: 16px !important;
    }

    .pw-acc-hero {
        padding: 18px 16px !important;
        margin-bottom: 20px !important;
    }

    .pw-acc-avatar {
        width: 48px !important;
        height: 48px !important;
        font-size: 22px !important;
    }

    .pw-acc-title {
        font-size: 20px !important;
    }

    .pw-acc-subtitle {
        font-size: 12.5px !important;
    }

    .pw-acc-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .pw-acc-card {
        padding: 12px 14px !important;
    }
}

/* Sidebar Module for Account pages */
.pw-account-sidebar {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    margin-bottom: 24px !important;
}

.pw-account-sidebar .list-group-item {
    padding: 12px 18px !important;
    border: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    color: #334155 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    transition: all 0.15s ease !important;
    background: #ffffff !important;
}

.pw-account-sidebar .list-group-item:last-child {
    border-bottom: none !important;
}

.pw-account-sidebar .list-group-item i {
    font-size: 15px !important;
    color: #64748b !important;
    width: 18px !important;
    text-align: center !important;
    transition: color 0.15s ease !important;
}

.pw-account-sidebar .list-group-item:hover {
    background: #f8fafc !important;
    color: #087cd1 !important;
    padding-left: 22px !important;
}

.pw-account-sidebar .list-group-item:hover i {
    color: #087cd1 !important;
}

.pw-account-sidebar .list-group-item.text-danger {
    color: #ef4444 !important;
}

.pw-account-sidebar .list-group-item.text-danger:hover {
    background: #fef2f2 !important;
    color: #dc2626 !important;
}

.pw-account-sidebar .list-group-item.text-danger i {
    color: #ef4444 !important;
}

/* Universal Account Subpages Polish (Orders, Edit, Addresses, Wishlist, Login) */
div[id^="account-"]:not(#account-account) #content {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 28px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
}

div[id^="account-"] #content>h1,
div[id^="account-"] #content>h2 {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin-top: 0 !important;
    margin-bottom: 22px !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #f1f5f9 !important;
    letter-spacing: -0.3px !important;
    position: relative;
}

div[id^="account-"] #content>h1::after,
div[id^="account-"] #content>h2::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 36px;
    height: 2px;
    background: #087cd1;
}

/* Forms polish in Account pages */
div[id^="account-"] .form-horizontal .form-group {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 18px !important;
}

div[id^="account-"] .form-control {
    height: 44px !important;
    border-radius: 8px !important;
    border: 1px solid #cbd5e1 !important;
    padding: 10px 14px !important;
    font-size: 13.5px !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
}

div[id^="account-"] .form-control:focus {
    border-color: #087cd1 !important;
    box-shadow: 0 0 0 3px rgba(8, 124, 209, 0.15) !important;
}

div[id^="account-"] label.control-label {
    font-weight: 700 !important;
    font-size: 13px !important;
    color: #334155 !important;
    padding-top: 10px !important;
}

div[id^="account-"] fieldset legend {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding-bottom: 8px !important;
    margin-bottom: 20px !important;
}

/* Buttons in Account Pages */
div[id^="account-"] .btn-primary {
    background: linear-gradient(135deg, #087cd1 0%, #0284c7 100%) !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    padding: 10px 22px !important;
    font-size: 13.5px !important;
    box-shadow: 0 2px 6px rgba(8, 124, 209, 0.2) !important;
    transition: all 0.2s ease !important;
}

div[id^="account-"] .btn-primary:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;
    box-shadow: 0 4px 12px rgba(8, 124, 209, 0.3) !important;
    transform: translateY(-1px) !important;
}

div[id^="account-"] .btn-default {
    background: #f8fafc !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    padding: 9px 18px !important;
    font-size: 13.5px !important;
    transition: all 0.2s ease !important;
}

div[id^="account-"] .btn-default:hover {
    background: #f1f5f9 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
}

/* Tables in Account Pages (Orders, Addresses, Wishlist) */
div[id^="account-"] .table {
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1px solid #e2e8f0 !important;
    margin-bottom: 20px !important;
}

div[id^="account-"] .table>thead>tr>th,
div[id^="account-"] .table>thead>tr>td {
    background: #f8fafc !important;
    color: #475569 !important;
    font-weight: 700 !important;
    font-size: 12.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 12px 14px !important;
}

div[id^="account-"] .table>tbody>tr>td {
    padding: 14px !important;
    font-size: 13.5px !important;
    color: #334155 !important;
    vertical-align: middle !important;
    border-top: 1px solid #f1f5f9 !important;
}

div[id^="account-"] .table-hover>tbody>tr:hover {
    background-color: #f8fafc !important;
}

/* Login & Register Well Cards */
#account-login .well,
#account-register .well {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 28px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

#account-login .well h2,
#account-register .well h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-top: 0 !important;
    margin-bottom: 14px !important;
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

#account-login .well h2::after,
#account-register .well h2::after {
    display: none !important;
}

/* ==========================================================
   AUTHENTICATION PAGES (LOGIN & REGISTER) ENHANCEMENTS
   ========================================================== */

/* Login & Register Wrapper */
.pw-auth-page {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.pw-auth-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px 0 !important;
}

.pw-auth-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 32px 30px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05) !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    transition: all 0.25s ease !important;
}

.pw-auth-card:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.08) !important;
}

.pw-auth-card-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 24px !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.pw-auth-card-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    flex-shrink: 0 !important;
}

.pw-icon-login {
    background: #e0f2fe !important;
    color: #087cd1 !important;
}

.pw-icon-register {
    background: #fef3c7 !important;
    color: #d97706 !important;
}

.pw-auth-card-titles {
    flex: 1 1 auto !important;
}

.pw-auth-card-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 0 4px 0 !important;
    letter-spacing: -0.3px !important;
    border: none !important;
    padding: 0 !important;
}

.pw-auth-card-title::after {
    display: none !important;
}

.pw-auth-card-subtitle {
    font-size: 13px !important;
    color: #64748b !important;
    margin: 0 !important;
    font-weight: 500 !important;
}

.pw-auth-form {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

.pw-input-group {
    margin-bottom: 20px !important;
}

.pw-input-group label.control-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
}

.pw-input-group label.control-label i {
    color: #087cd1 !important;
    font-size: 14px !important;
}

.pw-pwd-label-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 8px !important;
}

.pw-pwd-label-row label.control-label {
    margin-bottom: 0 !important;
}

.pw-forgot-link {
    font-size: 12.5px !important;
    color: #087cd1 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    transition: color 0.15s ease !important;
}

.pw-forgot-link:hover {
    color: #0369a1 !important;
    text-decoration: underline !important;
}

.pw-auth-submit-btn {
    height: 46px !important;
    background: linear-gradient(135deg, #087cd1 0%, #0284c7 100%) !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    box-shadow: 0 4px 14px rgba(8, 124, 209, 0.3) !important;
    transition: all 0.2s ease !important;
    margin-top: 8px !important;
    cursor: pointer !important;
}

.pw-auth-submit-btn:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;
    box-shadow: 0 6px 18px rgba(8, 124, 209, 0.4) !important;
    transform: translateY(-1px) !important;
}

/* Register Promo Card & Perks */
.pw-auth-lead-text {
    font-size: 14px !important;
    color: #475569 !important;
    line-height: 1.55 !important;
    margin-bottom: 20px !important;
}

.pw-auth-perks-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 28px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    flex: 1 1 auto !important;
}

.pw-auth-perks-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    font-size: 13.5px !important;
    color: #334155 !important;
    line-height: 1.4 !important;
}

.pw-auth-perks-list li i {
    color: #10b981 !important;
    font-size: 17px !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
}

.pw-auth-action-box {
    margin-top: auto !important;
}

.pw-auth-outline-btn {
    height: 46px !important;
    background: #f8fafc !important;
    border: 2px solid #cbd5e1 !important;
    color: #0f172a !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

.pw-auth-outline-btn:hover {
    background: #087cd1 !important;
    border-color: #087cd1 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(8, 124, 209, 0.25) !important;
    transform: translateY(-1px) !important;
}

/* Register Page Specifics */
.pw-reg-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
    border-radius: 12px !important;
    padding: 24px 28px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08) !important;
    position: relative;
    overflow: hidden;
}

.pw-reg-hero-content {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
}

.pw-reg-avatar {
    width: 52px !important;
    height: 52px !important;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.35) !important;
    flex-shrink: 0 !important;
}

.pw-reg-title {
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    margin: 0 0 4px 0 !important;
    letter-spacing: -0.3px !important;
    border: none !important;
    padding: 0 !important;
}

.pw-reg-title::after {
    display: none !important;
}

.pw-reg-subtitle {
    color: #94a3b8 !important;
    font-size: 13.5px !important;
    margin: 0 !important;
}

.pw-reg-subtitle a {
    color: #38bdf8 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

.pw-register-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 32px 30px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05) !important;
}

.pw-register-form fieldset {
    margin-bottom: 28px !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.pw-register-form fieldset:last-of-type {
    border-bottom: none !important;
}

.pw-register-form legend {
    font-size: 16.5px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 22px !important;
    padding-bottom: 8px !important;
    border-bottom: 2px solid #f1f5f9 !important;
}

.pw-register-form legend i {
    color: #087cd1 !important;
    font-size: 17px !important;
}

.pw-reg-buttons {
    margin-top: 10px !important;
    padding-top: 18px !important;
    border-top: 1px solid #e2e8f0 !important;
}

.pw-agree-wrap {
    display: inline-flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}

.pw-agree-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin: 0 !important;
    cursor: pointer !important;
}

.pw-agree-label a {
    color: #087cd1 !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
}

.pw-reg-submit-btn {
    height: 46px !important;
    background: linear-gradient(135deg, #087cd1 0%, #0284c7 100%) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 14.5px !important;
    padding: 0 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 12px rgba(8, 124, 209, 0.25) !important;
    transition: all 0.2s ease !important;
}

.pw-reg-submit-btn:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;
    box-shadow: 0 6px 18px rgba(8, 124, 209, 0.35) !important;
    transform: translateY(-1px) !important;
}

/* ==========================================================
   TESTIMONIALS PRO PREMIUM STYLING
   Brand colors: #0875D1 (Blue), #0f172a (Dark), #f59e0b (Gold Stars)
   ========================================================== */

.pw-testimonial-page {
    padding-top: 15px;
    padding-bottom: 45px;
}

/* Hero Header */
.pw-test-hero {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 26px 28px;
    margin-bottom: 25px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
}

.pw-test-hero-content {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.pw-test-hero-badge {
    width: 58px;
    height: 58px;
    min-width: 58px;
    border-radius: 14px;
    background: linear-gradient(135deg, #0875D1 0%, #0284c7 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    box-shadow: 0 6px 16px rgba(8, 117, 209, 0.28);
}

.pw-test-hero-info {
    flex: 1 1 300px;
}

.pw-test-hero-info .pw-test-title {
    margin: 0 0 6px 0;
    font-size: 24px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.02em;
}

.pw-test-hero-info .pw-test-subtitle {
    margin: 0;
    font-size: 14px;
    color: #64748b;
    line-height: 1.5;
}

.pw-test-hero-action {
    margin-left: auto;
}

.pw-test-write-btn {
    background: linear-gradient(135deg, #0875D1 0%, #0284c7 100%) !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    padding: 11px 22px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 12px rgba(8, 117, 209, 0.22) !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

.pw-test-write-btn:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;
    box-shadow: 0 6px 18px rgba(8, 117, 209, 0.35) !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
}

/* Testimonials Grid */
.pw-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.pw-test-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 22px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.25s ease;
    position: relative;
    overflow: hidden;
}

.pw-test-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #0875D1, #38bdf8);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.pw-test-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
    border-color: #cbd5e1;
}

.pw-test-card:hover::before {
    opacity: 1;
}

.pw-test-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px dashed #e2e8f0;
}

.pw-test-author {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.pw-test-avatar {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    background: #f1f5f9;
    border: 2px solid #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    font-size: 18px;
    overflow: hidden;
}

.pw-test-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pw-test-author-meta {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.pw-test-author-name {
    font-weight: 700;
    font-size: 14.5px;
    color: #0f172a;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pw-test-date {
    font-size: 11.5px;
    color: #94a3b8;
    margin-top: 2px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.pw-test-stars {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 13px;
    color: #cbd5e1;
    flex-shrink: 0;
}

.pw-test-stars .fa-star.active,
.pw-test-stars .fa-star {
    color: #f59e0b;
}

.pw-test-stars .fa-star-o {
    color: #cbd5e1;
}

.pw-test-quote {
    position: relative;
    padding-left: 20px;
    flex: 1;
}

.pw-test-quote-icon {
    position: absolute;
    left: 0;
    top: 2px;
    font-size: 13px;
    color: #93c5fd;
}

.pw-test-desc {
    margin: 0;
    font-size: 13.5px;
    line-height: 1.6;
    color: #334155;
    word-break: break-word;
}

/* Pagination */
.pw-test-pagination-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 35px;
    padding-top: 15px;
    border-top: 1px solid #f1f5f9;
}

.pw-test-pagination-links .pagination {
    margin: 0;
}

.pw-test-pagination-links .pagination > li > a,
.pw-test-pagination-links .pagination > li > span {
    color: #0875D1;
    border-color: #e2e8f0;
    padding: 7px 13px;
    font-weight: 600;
    font-size: 13px;
    border-radius: 6px;
    margin: 0 2px;
}

.pw-test-pagination-links .pagination > .active > a,
.pw-test-pagination-links .pagination > .active > span {
    background-color: #0875D1;
    border-color: #0875D1;
    color: #ffffff;
}

.pw-test-pagination-results {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}

/* Empty Box */
.pw-test-empty-box {
    text-align: center;
    padding: 60px 20px;
    background: #ffffff;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    margin-bottom: 30px;
}

.pw-test-empty-box i {
    font-size: 48px;
    color: #94a3b8;
    margin-bottom: 12px;
}

.pw-test-empty-box h3 {
    margin: 0 0 6px 0;
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
}

.pw-test-empty-box p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
}

/* Testimonial Form Card */
.pw-test-form-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.05);
    margin-top: 25px;
    margin-bottom: 30px;
}

.pw-test-form-header {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    padding: 20px 26px;
    color: #ffffff;
    display: flex;
    align-items: center;
    gap: 16px;
}

.pw-test-form-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 10px;
    background: rgba(8, 117, 209, 0.25);
    border: 1px solid rgba(8, 117, 209, 0.4);
    color: #38bdf8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.pw-test-form-titles .pw-test-form-title {
    margin: 0 0 4px 0 !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    letter-spacing: 0.2px !important;
}

.pw-test-form-titles .pw-test-form-sub {
    margin: 0 !important;
    font-size: 13px !important;
    color: #cbd5e1 !important;
}

.pw-test-form-body {
    padding: 26px;
}

.pw-test-form-body .form-group {
    margin-bottom: 18px;
}

.pw-test-form-body .control-label {
    font-weight: 600;
    color: #334155;
    font-size: 13.5px;
    padding-top: 9px;
}

.pw-test-form-body .form-control {
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 14px;
    color: #0f172a;
    box-shadow: none;
    transition: all 0.2s ease;
}

.pw-test-form-body .form-control:focus {
    border-color: #0875D1;
    box-shadow: 0 0 0 3px rgba(8, 117, 209, 0.15);
}

.pw-test-upload-btn {
    background: #f8fafc !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 8px 16px !important;
    border-radius: 7px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: all 0.2s ease !important;
}

.pw-test-upload-btn:hover {
    background: #e2e8f0 !important;
    border-color: #94a3b8 !important;
    color: #0f172a !important;
}

/* Star rating radios */
.pw-test-star-radios {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 5px;
}

.pw-star-radio-lbl {
    display: inline-flex;
    align-items: center;
    margin: 0;
    cursor: pointer;
}

.pw-star-radio-lbl input[type="radio"] {
    display: none;
}

.pw-star-radio-lbl span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 14px;
    border: 1px solid #cbd5e1;
    border-radius: 20px;
    background: #f8fafc;
    font-size: 13px;
    font-weight: 600;
    color: #475569;
    transition: all 0.2s ease;
}

.pw-star-radio-lbl span i {
    color: #f59e0b;
}

.pw-star-radio-lbl input[type="radio"]:checked + span {
    background: #eff6ff;
    border-color: #0875D1;
    color: #0875D1;
    box-shadow: 0 2px 6px rgba(8, 117, 209, 0.15);
}

.pw-test-submit-btn {
    height: 44px !important;
    background: linear-gradient(135deg, #0875D1 0%, #0284c7 100%) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 14.5px !important;
    padding: 0 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 12px rgba(8, 117, 209, 0.25) !important;
    transition: all 0.2s ease !important;
}

.pw-test-submit-btn:hover {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%) !important;
    box-shadow: 0 6px 18px rgba(8, 117, 209, 0.35) !important;
    transform: translateY(-1px) !important;
}

/* Mobile Responsiveness */
@media (max-width: 767px) {
    .pw-testimonial-page {
        padding-top: 10px;
    }

    .pw-test-hero {
        padding: 18px 16px;
    }

    .pw-test-hero-badge {
        width: 46px;
        height: 46px;
        min-width: 46px;
        font-size: 20px;
    }

    .pw-test-hero-info .pw-test-title {
        font-size: 20px;
    }

    .pw-test-hero-action {
        width: 100%;
        margin-left: 0;
    }

    .pw-test-write-btn {
        width: 100%;
        justify-content: center;
    }

    .pw-testimonials-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .pw-test-card {
        padding: 16px;
    }

    .pw-test-form-header {
        padding: 16px;
    }

    .pw-test-form-body {
        padding: 18px 14px;
    }

    .pw-test-form-body .control-label {
        padding-top: 0;
        margin-bottom: 6px;
    }

    .pw-test-submit-btn {
        width: 100%;
        justify-content: center;
    }
}