/* NYR Shop Code: migrated from WPCode CSS snippet #182918 "Master Shop Layout CSS" (export of 2026-10-17). */
/* ==========================================
   NYRUSH MASTER SHOP LAYOUT & CARDS
   (Bulletproof Flexbox Percentage Grid)
   ========================================== */

/* 1. CONTAINER & SIDEBAR FIXES */
.nyrush-catalog-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    max-width: 1300px !important; 
    margin: 40px auto 40px auto !important;
    padding: 0 20px !important;
    gap: 40px !important;
    align-items: flex-start !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.nyrush-catalog-sidebar {
    width: 260px !important;
    min-width: 260px !important;
    flex-shrink: 0 !important;
    background: #ffffff !important;
    padding: 25px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;

    /* NYRUSH: Sticky sidebar disabled */
    position: static !important;
    top: auto !important;

    box-sizing: border-box !important;
}

.sidebar-widget { margin-bottom: 35px !important; }

.sidebar-title {
    font-family: 'Montserrat', sans-serif !important; font-size: 16px !important; font-weight: 700 !important; color: #1a1a1a !important;
    margin-bottom: 15px !important; text-transform: uppercase !important; border-bottom: 2px solid #edf2f7 !important; padding-bottom: 10px !important;
}

.sidebar-cat-list, .sidebar-filter-list { 
    list-style: none !important; padding: 0 !important; margin: 0 !important; 
}

.pf-hidden-item { display: none !important; }

.nyrush-show-more-btn {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    color: #1a1a1a !important; 
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    padding: 10px 0 0 0 !important;
    margin-top: 5px !important;
    display: inline-block !important;
    text-align: left !important;
}
.nyrush-show-more-btn:hover, .nyrush-show-more-btn:focus, .nyrush-show-more-btn:active {
    color: #000000 !important; 
    text-decoration: underline !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}

/* ==========================================
   SIDEBAR - CATEGORY & FILTER SPACING
   ========================================== */

/* CATEGORY ITEMS - tighter vertical spacing */
.sidebar-cat-list li {
    margin-bottom: 4px !important;
}

.sidebar-cat-list li a {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    display: block !important;

    /* Adjust this for top/bottom spacing */
    padding: 2px 0 !important;

    transition: all 0.2s ease !important;
}

.sidebar-cat-list li a:hover,
.sidebar-cat-list li a.active {
    color: #1a1a1a !important;
    font-weight: 700 !important;
    padding-left: 5px !important;
}


/* DROPDOWN ARROW INDICATOR FOR ACTIVE PARENT */
.sidebar-cat-list > li:has(.sidebar-subcat-list) > a.active::after {
    content: " ↓" !important;
    display: inline-block !important;
    margin-left: 6px !important;
    font-weight: 700 !important;
}


/* SHOP BY BRAND / SIZE
   Keep their existing spacing separate from Categories */
.sidebar-filter-list li {
    margin-bottom: 4px !important;
}

.sidebar-filter-list li label {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: #1a1a1a !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}


/* MAIN CATALOG */
.nyrush-catalog-main { 
    flex-grow: 1 !important; 
    min-width: 0 !important; 
    width: 100% !important;
}

/* ==========================================
   THE PREMIUM UNIFIED HEADER ROW (NO-BOX PURE TEXT MINIMALIST)
   ========================================== */
.nyrush-premium-header-box {
    background-color: transparent !important; 
    border: none !important;                  
    border-radius: 0 !important;
    padding: 0 0 10px 0 !important;           
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;         
    width: 100% !important;
    box-sizing: border-box !important;
    margin-bottom: 35px !important;
}

/* LEFT BLOCK CONTAINER: BREADCRUMBS & TITLE */
.header-box-left {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
}

.header-box-left .woocommerce-breadcrumb {
    margin: 0 0 8px 0 !important;             
    padding: 0 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    color: #718096 !important;
    background: transparent !important;
}
.header-box-left .woocommerce-breadcrumb a { color: #4a5568 !important; text-decoration: none !important; }

.header-box-left .page-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 42px !important;               
    font-weight: 800 !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
}

/* RIGHT BLOCK CONTAINER: RESULTS COUNTER & SORTING SELECT */
.header-box-right {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important; 
    padding-bottom: 4px !important;           
}

.header-box-right .woocommerce-result-count {
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: #4a5568 !important;
    white-space: nowrap !important;
}

.header-box-right .woocommerce-ordering {
    margin: 0 !important;
    padding: 0 !important;
}

.header-box-right .woocommerce-ordering select {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    padding: 8px 30px 8px 12px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    outline: none !important;
    cursor: pointer !important;
}

/* ==========================================
   2. MAIN FLEXBOX GRID (THE ULTIMATE OVERRIDE)
   ========================================== */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products.columns-3 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce ul.products::before, 
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after { 
    display: none !important; 
    content: none !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .button { 
    display: none !important; 
}

/* ==========================================
   3. CARD CONTAINER (STRICT 33% WIDTH)
   ========================================== */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products.columns-3 li.product {
    width: calc(33.333% - 20px) !important;
    max-width: calc(33.333% - 20px) !important;
    flex: 0 0 calc(33.333% - 20px) !important;
    
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 0 0 20px 0 !important; 
    text-align: center !important;
    position: relative !important; 
    overflow: hidden !important; 
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    float: none !important; 
    clear: none !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce ul.products li.product:hover {
    box-shadow: 0 12px 20px -5px rgba(0,0,0,0.12) !important;
    transform: translateY(-4px) !important;
    border-color: #cbd5e1 !important;
}

/* IMAGE FIX */
.woocommerce ul.products li.product .woocommerce-loop-product__link { display: block !important; box-sizing: border-box !important; text-decoration: none !important; }
.woocommerce ul.products li.product img {
    width: 100% !important;
    height: 240px !important; 
    margin: 0 !important;
    padding: 20px !important;
    background-color: #f8f9fa !important;
    box-sizing: border-box !important; 
    object-fit: contain !important;
    display: block !important;
}

/* BADGES */
.nyrush-card-badge {
    position: absolute !important; top: 0 !important; right: 0 !important; color: #fff !important;
    font-family: 'Open Sans', sans-serif !important; font-size: 11px !important; font-weight: 600 !important;
    padding: 5px 14px !important; border-bottom-left-radius: 8px !important; z-index: 9 !important;
    text-transform: uppercase !important;
}
.bg-navy { background-color: #002b49 !important; }
.bg-green { background-color: #a7e6c4 !important; color: #004d26 !important; } 

/* CARD CONTENT */
.nyrush-card-content {
    padding: 20px 20px 0 20px !important;
    box-sizing: border-box !important;
    display: flex !important; flex-direction: column !important; flex-grow: 1 !important; width: 100% !important;
}
.woocommerce-loop-product__title { font-family: 'Montserrat', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; color: #1a202c !important; margin-bottom: 15px !important; line-height: 1.3 !important; min-height: 40px !important; }

/* SWATCHES & META */
.nyrush-card-swatches { display: flex !important; justify-content: center !important; align-items: center !important; flex-wrap: wrap !important; gap: 6px !important; margin-bottom: 12px !important; }
.mini-swatch { width: 18px !important; height: 18px !important; border-radius: 50% !important; border: 1px solid #e2e8f0 !important; display: inline-block !important; }
.swatch-more { font-family: 'Open Sans', sans-serif !important; font-size: 12px !important; color: #718096 !important; margin-left: 6px !important; white-space: nowrap !important; }
.nyrush-card-reviews { display: flex !important; justify-content: center !important; align-items: center !important; gap: 6px !important; margin-bottom: 10px !important; }
.nyrush-card-reviews .star-rating { font-size: 13px !important; color: #f6ad55 !important; width: 65px !important; }
.review-count { font-family: 'Open Sans', sans-serif !important; font-size: 12px !important; color: #4a5568 !important; }
.nyrush-card-reviews-spacer { height: 10px !important; }
.nyrush-card-meta { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; color: #718096 !important; margin-bottom: 15px !important; font-weight: 500 !important; }

/* PRICE & BUTTON */
.nyrush-card-price-wrap {
    margin-top: auto !important; 
    padding-top: 15px !important;
    border-top: 1px solid #edf2f7 !important;
    width: 100% !important;
}
.nyrush-card-price { display: flex !important; justify-content: center !important; align-items: baseline !important; gap: 5px !important; margin-bottom: 15px !important; }
.starting-text { font-family: 'Open Sans', sans-serif !important; font-size: 13px !important; color: #002b49 !important; font-weight: 500 !important; }
.nyrush-card-price strong { font-family: 'Montserrat', sans-serif !important; font-size: 18px !important; font-weight: 800 !important; color: #002b49 !important; }

.nyrush-card-btn {
    display: block !important;
    width: 100% !important;
    background-color: #002b49 !important; 
    color: #ffffff !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    padding: 12px 0 !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    border: none !important;
}
.nyrush-card-btn:hover { background-color: #004070 !important; }

/* ==========================================
   4. RESPONSIVE MASTER RULES
   ========================================== */
@media (max-width: 992px) {
    .nyrush-catalog-container { flex-direction: column !important; margin-top: 20px !important; }
    .nyrush-catalog-sidebar { width: 100% !important; position: relative !important; top: 0 !important; }
    
    .woocommerce ul.products li.product, .woocommerce-page ul.products li.product, ul.products.columns-3 li.product { 
        width: calc(50% - 15px) !important; max-width: calc(50% - 15px) !important; flex: 0 0 calc(50% - 15px) !important; 
    }
}

@media (max-width: 768px) {
    .nyrush-premium-header-box {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 15px !important;
    }
    .header-box-right {
        width: 100% !important;
        justify-content: space-between !important;
    }
}

@media (max-width: 576px) {
    .woocommerce ul.products li.product, .woocommerce-page ul.products li.product, ul.products.columns-3 li.product { 
        width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; 
    }
    .header-box-right {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    .header-box-right .woocommerce-ordering,
    .header-box-right .woocommerce-ordering select {
        width: 100% !important;
    }
}

/* ==========================================
   5. PAGINATION STYLING
   ========================================== */
.woocommerce nav.woocommerce-pagination,
.woocommerce-pagination {
    width: 100% !important;
    margin-top: 40px !important;
    text-align: center !important;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce-pagination ul {
    display: inline-flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-pagination ul li {
    margin: 0 5px !important;
    border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    min-width: 35px !important;
    height: 35px !important;
    padding: 0 10px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    background: transparent !important;
    border: none !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
    background-color: #f1f5f9 !important;
    color: #000000 !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-pagination ul li span.current {
    background-color: #1a1a1a !important;
    color: #ffffff !important;
}

/* ==========================================
   9. SUBCATEGORY DROPDOWN STYLING (PURE TEXT CLEAN)
   ========================================== */
.sidebar-subcat-list {
    list-style: none !important;
    list-style-type: none !important;
    padding-left: 15px !important;     
    margin: 6px 0 10px 0 !important;
    border-left: none !important;      
    margin-left: 0 !important;
}

.sidebar-subcat-list li {
    list-style: none !important;
    list-style-type: none !important;
    margin-bottom: 6px !important;
}

.sidebar-subcat-list li::before,
.sidebar-subcat-list li::after {
    content: none !important;
    display: none !important;
}

.sidebar-subcat-list li a {
    font-size: 13px !important;
    color: #718096 !important; 
    padding: 2px 0 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.sidebar-subcat-list li a:hover, 
.sidebar-subcat-list li a.active {
    color: #000000 !important; 
    font-weight: 700 !important;
    padding-left: 0 !important; 
}

/* ============================================================================
 * NYRUSH SHOP — "SELECT OPTIONS" BUTTON FIX + PINK BRANDING
 * Add-on. Paste at the END of your master shop layout CSS.
 * ============================================================================ */

/* The PHP outputs .nyrush-card-price then the button directly inside
   .nyrush-card-content (there is no .nyrush-card-price-wrap element).
   Push the price + button block to the bottom of the card and center them. */

.nyrush-card-content .nyrush-card-price {
    margin-top: auto !important;      /* pin price/button to bottom of card */
    padding-top: 15px !important;
    border-top: 1px solid #edf2f7 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: baseline !important;
    gap: 5px !important;
    margin-bottom: 15px !important;
}

/* Select Options button — pink branding + perfectly centered */
.nyrush-card-btn,
.woocommerce ul.products li.product a.nyrush-card-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 auto !important;
    padding: 13px 0 !important;
    background-color: #ff3b6a !important;   /* NYR pink */
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    border: none !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.nyrush-card-btn:hover,
.woocommerce ul.products li.product a.nyrush-card-btn:hover {
    background-color: #e11d48 !important;    /* pink hover */
    color: #ffffff !important;
}
/* ============================================================================
 * NYRUSH SHOP — MOBILE HORIZONTAL CARDS (<=767px)
 * Add-on. Paste at the VERY END of your master shop layout CSS (WPCode).
 * Matches the category-landing card style: image left, content right, compact,
 * badge upper-left. Desktop/tablet layout is untouched.
 * ============================================================================ */

@media (max-width: 767px) {

    /* Grid: one card per row on mobile (override the 100% single-col rule so we
       can make each card an internal 2-column layout). */
    .woocommerce ul.products,
    .woocommerce-page ul.products,
    ul.products.columns-3 {
        gap: 14px !important;
    }

    /* Each product card = 2 columns: image (left) + content (right). */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    ul.products.columns-3 li.product {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        display: grid !important;
        grid-template-columns: 116px 1fr !important;
        align-items: center !important;
        column-gap: 14px !important;
        padding: 10px !important;
        text-align: left !important;
        border-radius: 10px !important;
        overflow: visible !important; /* let the corner badge show fully */
    }

    /* Image column: fixed width, square-ish, no big gray padding. */
    .woocommerce ul.products li.product .woocommerce-loop-product__link {
        grid-column: 1 !important;
        grid-row: 1 / span 2 !important;
        margin: 0 !important;
        display: block !important;
    }
    .woocommerce ul.products li.product img,
    .woocommerce-page ul.products li.product img,
    ul.products.columns-3 li.product img {
        width: 100% !important;
        height: 116px !important;
        padding: 8px !important;
        background-color: #f8f9fa !important;
        border-radius: 8px !important;
        object-fit: contain !important;
        margin: 0 !important;
    }

    /* Content column: right side, left-aligned, tight spacing. */
    .woocommerce ul.products li.product .nyrush-card-content {
        grid-column: 2 !important;
        padding: 0 !important;
        text-align: left !important;
        align-items: flex-start !important;
        width: 100% !important;
    }
    .nyrush-card-content .woocommerce-loop-product__title {
        min-height: 0 !important;
        font-size: 15px !important;
        margin: 0 0 6px !important;
        text-align: left !important;
        line-height: 1.25 !important;
    }
    /* Swatches: left-aligned, tighter. */
    .nyrush-card-content .nyrush-card-swatches {
        justify-content: flex-start !important;
        min-height: 0 !important;
        margin-bottom: 6px !important;
    }
    .mini-swatch { width: 16px !important; height: 16px !important; }

    /* Hide reviews block on the compact card to save vertical space. */
    .nyrush-card-content .nyrush-card-reviews,
    .nyrush-card-content .nyrush-card-reviews-spacer { display: none !important; }

    /* Sizes meta: left, small. */
    .nyrush-card-content .nyrush-card-meta {
        text-align: left !important;
        margin: 0 0 6px !important;
        font-size: 13px !important;
    }

    /* Price: left-aligned, no top border/auto-push (not needed in horizontal). */
    .nyrush-card-content .nyrush-card-price {
        margin-top: 0 !important;
        padding-top: 0 !important;
        border-top: none !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }

/* Badge upper-left on SHOP mobile cards only.
   Shop cards are plain li.product; landing cards have .nyrush-bestseller-card,
   so excluding that class keeps this from touching the landing. */
@media (max-width: 767px) {
    .nyrush-catalog-main ul.products li.product:not(.nyrush-bestseller-card) .nyrush-card-badge {
        top: -34px !important;
        left: -11px !important;
        right: auto !important;
        margin: 0 !important;
        border-bottom-left-radius: 0 !important;
        border-radius: 10px 0 10px 0 !important;
        padding: 6px 12px !important;
        font-size: 10px !important;
        line-height: 1 !important;
        z-index: 9 !important;
    }
}
    /* Best-seller secondary badge (if present) sits just under the corner one. */
    .woocommerce ul.products li.product .nyrush-bestseller-badge {
        top: 28px !important;
        left: 0 !important;
        right: auto !important;
        border-radius: 0 4px 4px 0 !important;
    }
}