body {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" /*{body-font-family}*/;
	font-size: 14px /*{body-font-size}*/;
	color: rgba(0, 0, 0, 1) /*{body-font-colour}*/;
	background-image: none /*{body-background-image}*/;
	background-color: rgba(255, 255, 255, 1) /*{body-background-colour}*/;
}
a, .btn-link{
	color: #006ff5 /*{link-text-colour}*/;
}
a:hover, a:active, a:focus, .btn-link:hover{
	color: #004ca9 /*{link-text-hover-colour}*/;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" /*{headers-font-family}*/;
	color: rgba(0, 0, 0, 1) /*{headers-colour}*/;
}
.carousel-caption h3, .carousel-caption h2,.carousel-caption .h3,.carousel-caption p {
	color: rgba(184, 51, 51, 1) /*{carousel-text-colour}*/;
}
h1, .h1 {
	font-size: 26.249px /*{header-1-font-size}*/;
}
h2, .h2 {
	font-size: 21px /*{header-2-font-size}*/;
}
h3, .h3 {
	font-size: 18.375px /*{header-3-font-size}*/;
}
h4, .h4 {
	font-size: 15.75px /*{header-4-font-size}*/;
}
h5, .h5 {
	font-size: 13.124px /*{header-5-font-size}*/;
}
/* Secondary button */
.btn-outline-secondary, .btn-default {
	color: #333333 /*{buttons | btn-default-text-colour}*/;
	background-color: #ffffff /*{buttons | btn-default-background-colour}*/;
	border-color: #cccccc /*{buttons | btn-default-border-colour}*/;
}
.btn-outline-secondary:hover, .btn-default:hover{
	color: #333333 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #adadad /*{buttons | btn-default-border-colour-hover}*/;
}
.btn-outline-secondary.disabled, .btn-default:disabled {
	color: #333333 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #adadad /*{buttons | btn-default-border-colour-hover}*/;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle,
.btn-default:not(:disabled):not(.disabled):active, .btn-default:not(:disabled):not(.disabled).active, .show > .btn-default.dropdown-toggle {
	color: #333333 /*{buttons | btn-default-text-colour-hover}*/;
	background-color: #ebebeb /*{buttons | btn-default-background-colour-hover}*/;
	border-color: #adadad /*{buttons | btn-default-border-colour-hover}*/;
}
/* Primary button */
.btn-primary {
	color: #ffffff /*{buttons | btn-primary-text-colour}*/;
	background-color: #006ff5 /*{buttons | btn-primary-background-colour}*/;
	border-color: #006ff5 /*{buttons | btn-primary-border-colour}*/;
}
.btn-primary:hover {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #005ecf /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #0058c2 /*{buttons | btn-primary-border-colour-hover}*/;
}
.btn-primary.disabled, .btn-primary:disabled {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #005ecf /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #0058c2 /*{buttons | btn-primary-border-colour-hover}*/;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
	color: #ffffff /*{buttons | btn-primary-text-colour-hover}*/;
	background-color: #005ecf /*{buttons | btn-primary-background-colour-hover}*/;
	border-color: #0058c2 /*{buttons | btn-primary-border-colour-hover}*/;
}
/* Warning button */
.btn-warning {
	color: #ffffff /*{buttons | btn-warning-text-colour}*/;
	background-color: #ffc107 /*{buttons | btn-warning-background-colour}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour}*/;
}
.btn-warning:hover {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
.btn-warning.disabled, .btn-warning:disabled {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
	color: #ffffff /*{buttons | btn-warning-text-colour-hover}*/;
	background-color: #e0a800 /*{buttons | btn-warning-background-colour-hover}*/;
	border-color: #ffc107 /*{buttons | btn-warning-border-colour-hover}*/;
}
/* Danger button */
.btn-danger {
	color: #ffffff /*{buttons | btn-danger-text-colour}*/;
	background-color: #dc3545 /*{buttons | btn-danger-background-colour}*/;
	border-color: #dc3545 /*{buttons | btn-danger-border-colour}*/;
}
.btn-danger:hover {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #c82333 /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #bd2130 /*{buttons | btn-danger-border-colour-hover}*/;
}
.btn-danger.disabled, .btn-danger:disabled {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #c82333 /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #bd2130 /*{buttons | btn-danger-border-colour-hover}*/;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
	color: #ffffff /*{buttons | btn-danger-text-colour-hover}*/;
	background-color: #c82333 /*{buttons | btn-danger-background-colour-hover}*/;
	border-color: #bd2130 /*{buttons | btn-danger-border-colour-hover}*/;
}
/* Success button */
.btn-success {
	color: #ffffff /*{buttons | btn-success-text-colour}*/;
	background-color: #28a745 /*{buttons | btn-success-background-colour}*/;
	border-color: #28a745 /*{buttons | btn-success-border-colour}*/;
}
.btn-success:hover {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #218838 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #1e7e34 /*{buttons | btn-success-border-colour-hover}*/;
}
.btn-success.disabled, .btn-success:disabled {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #218838 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #1e7e34 /*{buttons | btn-success-border-colour-hover}*/;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
	color: #ffffff /*{buttons | btn-success-text-colour-hover}*/;
	background-color: #218838 /*{buttons | btn-success-background-colour-hover}*/;
	border-color: #1e7e34 /*{buttons | btn-success-border-colour-hover}*/;
}
/* Info button */
.btn-info {
	color: #ffffff /*{buttons | btn-info-text-colour}*/;
	background-color: #17a2b8 /*{buttons | btn-info-background-colour}*/;
	border-color: #17a2b8 /*{buttons | btn-info-border-colour}*/;
}
.btn-info:hover {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.btn-info.disabled, .btn-info:disabled {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
	color: #ffffff /*{buttons | btn-info-text-colour-hover}*/;
	background-color: #138496 /*{buttons | btn-info-background-colour-hover}*/;
	border-color: #117a8b /*{buttons | btn-info-border-colour-hover}*/;
}
.breadcrumb {
	background-color: rgba(0, 0, 0, 1) /*{breadcrumb-background-colour}*/;
}
.breadcrumb-item + .breadcrumb-item::before {
	color: rgba(255, 255, 255, 1) /*{breadcrumb-text-colour}*/;
}
.breadcrumb > .active,
.breadcrumb a {
	color: rgba(255, 255, 255, 1) /*{breadcrumb-text-colour}*/;
}
.pagination .page-link{
	color: rgba(82, 82, 82, 1) /*{pagination-text-colour}*/;
	background-color: #ffffff /*{pagination-bg-colour}*/;
	border-color: #dee2e6 /*{pagination-border-colour}*/;
}
.pagination .page-link:hover,
.pagination .page-link:focus{
	color: #004ca9 /*{pagination-text-colour-hover}*/;
	background-color: #e9ecef /*{pagination-bg-colour-hover}*/;
	border-color: #dee2e6 /*{pagination-border-colour-hover}*/;
}
.pagination .active .page-link,
.pagination .active .page-link:hover,
.pagination .active .page-link:focus {
	color: #ffffff /*{pagination-text-colour-active}*/;
	background-color: #006ff5 /*{pagination-bg-colour-active}*/;
	border-color: #006ff5 /*{pagination-border-colour-active}*/;
}
.badge-secondary {
	background-color: rgba(217, 195, 195, 1) /*{label-default-bg}*/;
}
.badge-primary {
	background-color: #006ff5 /*{label-primary-bg}*/;
}
.badge-success {
	background-color: #28a745 /*{label-success-bg}*/;
}
.badge-info {
	background-color: #17a2b8 /*{label-info-bg}*/;
}
.badge-warning {
	background-color: #212529 /*{label-warning-text-colour}*/;
	background-color: #ffc107 /*{label-warning-bg}*/;
}
.badge-danger {
	background-color: #dc3545 /*{label-danger-bg}*/;
}
.card {
	border-color: #dddddd /*{panel-border-colour}*/;
}
.card-header {
	background-color: #f5f5f5 /*{panel-header-bg-colour}*/;
	border-color: #dddddd /*{panel-header-border-colour}*/;
}
.productsave {
	color: #d9534f /*{sale-colour}*/;
}
.wrapper-header .navbar-toggler {
	color: rgba(245, 245, 245, 1) /*{navbar-default-link-colour}*/;
}
.wrapper-header .navbar {
	background-color: rgba(0, 0, 0, 1) /*{navbar-default-bg-colour}*/ !important;
}
.wrapper-header .navbar .navbar-nav .nav-link {
	color: rgba(245, 245, 245, 1) /*{navbar-default-link-colour}*/;
}
.wrapper-header .navbar-nav .nav-link:hover,
.wrapper-header .navbar-nav .nav-link:focus {
	color: rgba(212, 170, 170, 1) /*{navbar-default-link-colour-hover}*/;
}
.wrapper-header .navbar-nav .show > .nav-link,
.wrapper-header .navbar-nav .active > .nav-link,
.wrapper-header .navbar-nav .nav-link.show, .wrapper-header .navbar-nav .nav-link.active{
	color: #555555 /*{navbar-default-link-colour-active}*/;
}
.dropdown-menu {
	background-color: rgba(212, 93, 93, 1) /*{dropdown-menu-bg}*/;
	border-color: rgba(235, 235, 235, 1) /*{dropdown-menu-border-colour}*/;
}
.dropdown-item{
	color: #212529 /*{dropdown-menu-link-colour}*/;
}
.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item.active,
.dropdown-item:active{
	color: #262626 /*{dropdown-menu-link-colour-hover}*/;
	background-color: #f5f5f5 /*{dropdown-menu-link-bg-hover}*/;
}/* ========================================
   TOP PICKS - FIXED FOR BOOTSTRAP COLUMNS
   ======================================== */

.top-picks-container {
    padding: 30px 20px !important;
    background: #fff !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Override Bootstrap and force grid */
.top-picks-container .row {
    display: grid !important;
    grid-template-columns: repeat(6, 1fr) !important;
    gap: 15px !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* Target actual Bootstrap column classes */
.top-picks-container .row > article,
.top-picks-container .row > .col-8,
.top-picks-container .row > .col-sm-6,
.top-picks-container .row > .col-lg-4,
.top-picks-container .row > .col-xl-3 {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: none !important;
    position: relative !important;
}

/* Card/thumbnail styling */
.top-picks-container .card,
.top-picks-container .thumbnail {
    border: 1px solid #cccccc !important;
    border-radius: 6px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

/* HOT badge now driven by misc17 field via template - see nc-flag classes below */

/* Images */
.top-picks-container .thumbnail-image {
    height: 180px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px !important;
    border-bottom: none !important;
    background: transparent !important;
}

.top-picks-container .thumbnail-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
}

/* Yellow accent bar */
.top-picks-container .card-title::before,
.top-picks-container .h4::before {
    content: '' !important;
    display: block !important;
    width: 5px !important;
    height: 40px !important;
    background: #FFE100 !important;
    margin-bottom: 15px !important;
}

/* Product title */
.top-picks-container .card-title {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

/* Hide add to cart */
.top-picks-container .buying-options {
    display: none !important;
}

/* Mobile */
@media (max-width: 1200px) {
    .top-picks-container .row {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 992px) {
    .top-picks-container .row {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 576px) {
    .top-picks-container .row {
        grid-template-columns: 1fr !important;
    }
}


/* ========================================
   NEW ARRIVALS - FIXED FOR BOOTSTRAP
   ======================================== */

/* New Arrivals - layout controlled by home.template.html */
.new-arrivals-container {
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    background: transparent !important;
}

.new-arrivals-grid {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.new-arrivals-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.arrival-tile {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    display: block !important;
    position: relative !important;
}

.arrival-tile img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.arrival-tile:hover img {
    transform: scale(1.03) !important;
}

/* Mobile carousel overrides */
@media (max-width: 768px) {
    .new-arrivals-track {
        transition: transform 0.4s ease !important;
    }

    .arrival-tile {
        flex: 0 0 100% !important;
        min-width: 100% !important;
        width: 100% !important;
    }

    .arrival-tile img {
        height: auto !important;
        aspect-ratio: unset !important;
        object-fit: unset !important;
    }
}

/* ========================================
   SECTION HEADERS - NEW ARRIVALS / TOP PICKS
   ======================================== */

.section-header {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 1.4rem !important;
    font-weight: 900 !important;
    text-align: left !important;
    padding: 18px 20px 18px 24px !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    border-left: 5px solid #FFE100 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    width: 100% !important;
    display: block !important;
    margin: 30px 0 0 0 !important;
}

@media (max-width: 768px) {
    .section-header {
        font-size: 1.3rem !important;
        padding: 15px 20px !important;
    }
}

/* ========================================
   YELLOW BAR FIX - INLINE WITH TEXT
   ======================================== */

/* Top Picks - Yellow bar inline with product name */
.top-picks-container .card-title,
.top-picks-container .h4 {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.top-picks-container .card-title::before,
.top-picks-container .h4::before {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 36px !important;
    background: #FFE100 !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
    margin-left: 0 !important;
}

/* New Arrivals - Yellow bar inline with product name */
.new-arrivals-grid .card-title {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.new-arrivals-grid .card-title::before {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 36px !important;
    background: #FFE100 !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
    margin-left: 0 !important;
}

/* ========================================
   NITECORE PRODUCT THUMBNAIL - FULL GREY CARD
   ======================================== */

/* Card - full grey background, thin darker grey border, no internal dividers */
.nitecore-thumb-card {
    border: 1px solid #cccccc !important;
    border-radius: 6px !important;
    padding: 0 !important;
    transition: box-shadow 0.25s ease, transform 0.25s ease !important;
    overflow: hidden !important;
    background: #f0f0f0 !important;
}

/* Hover lift effect */
.nitecore-thumb-card:hover {
    box-shadow: 0 6px 20px rgba(0,0,0,0.12) !important;
    transform: translateY(-3px) !important;
}

/* Image panel - no background needed, card is already grey, no bottom border */
.nitecore-img-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding: 24px 20px 10px 20px !important;
    margin: 0 !important;
    text-align: center !important;
    min-height: 180px !important;
    transition: none !important;
}

/* Image sits naturally inside the panel */
.nitecore-img-panel .product-image {
    max-height: 160px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* Text area - grey background continues, consistent padding */
.nitecore-thumb-card .card-title,
.nitecore-thumb-card .price,
.nitecore-thumb-card .buying-options,
.nitecore-thumb-card .savings-container {
    padding-left: 0 !important;
    padding-right: 10px !important;
    background: transparent !important;
}

.nitecore-thumb-card .card-title {
    padding-top: 8px !important;
    margin-bottom: 4px !important;
}

.nitecore-thumb-card .savings-container {
    padding-bottom: 12px !important;
}

@media (max-width: 768px) {
    .nitecore-img-panel {
        min-height: 140px !important;
        padding: 15px 15px 8px 15px !important;
    }

    .nitecore-img-panel .product-image {
        max-height: 120px !important;
    }
}

/* ========================================
   MIX-BLEND-MODE - WHITE BACKGROUND REMOVAL
   ======================================== */

.nitecore-img-panel .product-image {
    mix-blend-mode: multiply !important;
}

/* ========================================
   NITECORE THUMBNAIL - SKU & SHORT DESCRIPTION TEXT
   ======================================== */

/* SKU / product name - dark grey like reference site */
.nitecore-thumb-card .nitecore-sku a {
    color: #3a3a3a !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    font-size: 2.1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    line-height: 1.1 !important;
}

.nitecore-thumb-card .nitecore-sku a:hover {
    color: #FFE100 !important;
}

/* Short description - slightly lighter dark grey */
.nitecore-thumb-card .nitecore-short-desc {
    color: #555555 !important;
    font-size: 0.82rem !important;
    line-height: 1.4 !important;
    margin-top: 4px !important;
    margin-bottom: 12px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* ========================================
   FONT SMOOTHING / ANTI-ALIASING
   ======================================== */

* {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Hide discount/RRP badges in Top Picks */
.top-picks-container .savings-container {
    display: none !important;
}

/* ========================================
   BARLOW CONDENSED - SELF HOSTED FONT
   ======================================== */

@font-face {
    font-family: 'Barlow Condensed';
    src: url('/assets/themes/skeletal/fonts/BarlowCondensed-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('/assets/themes/skeletal/fonts/BarlowCondensed-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('/assets/themes/skeletal/fonts/BarlowCondensed-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ========================================
   APPLY BARLOW CONDENSED SITEWIDE
   ======================================== */

/* Section headers */
.section-header {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 900 !important;
}

/* Hero category buttons */
.hero-cat {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
}

/* Product card titles / SKU names */
.card-title,
.card-title a,
.nitecore-sku,
.nitecore-sku a {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
}

/* HOT badge */
.top-picks-container .row > article .card::before {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
}

/* Value props bar text */
.value-text {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 600 !important;
}

/* Short description / misc16 */
.nitecore-short-desc {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    letter-spacing: 0.3px !important;
}

/* ========================================
   PRODUCT THUMBNAIL - SPEC HOVER OVERLAY
   ======================================== */

/* Image panel needs relative positioning for overlay */
.nitecore-img-panel {
    position: relative !important;
    overflow: hidden !important;
}

/* The overlay itself - hidden by default */
.nitecore-spec-overlay {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: rgba(0, 0, 0, 0.72) !important;
    padding: 8px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    opacity: 0 !important;
    transition: opacity 0.25s ease !important;
    pointer-events: none !important;
}

/* Fade in on card hover */
.nitecore-thumb-card:hover .nitecore-spec-overlay {
    opacity: 1 !important;
}

/* Each spec row - icon + value + unit */
.nitecore-spec-row {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

/* Icon box - red background matching product page */
.nitecore-spec-icon {
    width: 42px !important;
    height: 42px !important;
    background: #d32f2f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.nitecore-spec-icon svg {
    width: 32px !important;
    height: 32px !important;
}

/* Value - bold white */
.nitecore-spec-value {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.6rem !important;
    color: #ffffff !important;
    line-height: 1 !important;
}

/* Unit - lighter grey */
.nitecore-spec-unit {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    color: #cccccc !important;
    line-height: 1 !important;
}

/* ========================================
   HOT / NEW FLAG BADGES - PRODUCT THUMBNAILS
   ======================================== */

.nc-flag {
    position: absolute !important;
    top: 10px !important;
    left: 0 !important;
    z-index: 100 !important;
    pointer-events: none !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    letter-spacing: 2px !important;
    padding: 4px 18px 4px 10px !important;
    line-height: 1.2 !important;
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%) !important;
}

.nc-flag-hot {
    background: #a93226 !important;
    color: #fff !important;
}

.nc-flag-new {
    background: #FFE100 !important;
    color: #000 !important;
}

/* ================================================
   CATEGORY PAGE — NITECORE NZ
   ================================================ */

/* ── HERO ──────────────────────────────────────────────────
   flex row: 35% yellow | 65% photo
   img drives height naturally — no fixed height, no overflow,
   no cropping possible at any viewport width.
   ───────────────────────────────────────────────────────── */

.nc-cat-hero {
    display: flex !important;
    width: 100% !important;
    align-items: flex-start !important;
    overflow: visible !important;
}

.nc-cat-hero__panel {
    flex: 0 0 35% !important;
    width: 35% !important;
    align-self: stretch !important;
    background: #2a2a0e !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 24px 24px 24px 24px !important;
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

.nc-cat-hero__product-wrap {
    position: absolute !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
}

/* Desktop only: straddle the vertical yellow/photo border */
@media (min-width: 801px) {
    .nc-cat-hero__product-wrap {
        top: 5% !important;
        transform: none !important;
        right: -80px !important;
        left: auto !important;
        width: 160px !important;
        bottom: auto !important;
    }
}

.nc-cat-hero__product-img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    filter: drop-shadow(4px 8px 16px rgba(0,0,0,0.3)) !important;
    display: block !important;
}

.nc-cat-hero__copy {
    position: relative !important;
    z-index: 2 !important;
    line-height: 1.4 !important;
}

.nc-cat-hero__title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 900 !important;
    font-size: clamp(1.4rem, 2vw, 2.4rem) !important;
    text-transform: uppercase !important;
    color: #FFE100 !important;
    letter-spacing: 1px !important;
    line-height: 1 !important;
    margin: 0 0 8px 0 !important;
}

.nc-cat-hero__desc {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: clamp(0.72rem, 0.85vw, 0.88rem) !important;
    font-weight: 600 !important;
    color: #cccccc !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}
.nc-cat-hero__desc p {
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    color: inherit !important;
    line-height: inherit !important;
    margin: 0 0 0.5em 0 !important;
}
.nc-cat-hero__desc p:last-child { margin-bottom: 0 !important; }

.nc-cat-hero__photo-wrap {
    flex: 1 !important;
    line-height: 0 !important;
}

.nc-cat-hero__photo {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Mid breakpoint: still side-by-side but panel too short for product image
   Hide it cleanly rather than let it overlap text */
@media (min-width: 801px) and (max-width: 854px) {
    .nc-cat-hero__product-wrap { display: none !important; }
    .nc-cat-hero__panel { padding-top: 20px !important; }
}

@media (max-width: 800px) {
    /* Stack: photo on top, yellow panel below, product overlaps the join */
    .nc-cat-hero {
        flex-direction: column-reverse !important;
    }
    /* Photo wrap: relative so product image can anchor to its bottom-right */
    .nc-cat-hero__photo-wrap {
        flex: none !important;
        position: relative !important;
        overflow: visible !important;
    }
    /* Hero also needs relative so absolute children don't escape to page bottom */
    .nc-cat-hero {
        position: relative !important;
    }
    .nc-cat-hero__panel {
        flex: none !important;
        width: 100% !important;
        padding: 24px 20px 28px 20px !important;
        min-height: auto !important;
        position: static !important;
    }
    /* Product image: straddles the photo/yellow join — anchored to photo bottom */
    .nc-cat-hero__product-wrap {
        position: absolute !important;
        bottom: 20% !important;
        top: auto !important;
        right: 10px !important;
        left: auto !important;
        width: 42vw !important;
        max-width: 200px !important;
        height: auto !important;
        z-index: 10 !important;
        display: block !important;
        overflow: visible !important;
    }
    .nc-cat-hero__product-img {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        filter: drop-shadow(4px 8px 20px rgba(0,0,0,0.4)) !important;
    }
    .nc-cat-hero__panel { padding-top: 20px !important; }
    .nc-cat-hero__title { font-size: 2rem !important; }
    .nc-cat-hero__desc { font-size: 1rem !important; line-height: 1.6 !important; }
}

/* ── BREADCRUMB ──────────────────────────────────────────── */
.nc-cat-breadcrumb {
    background: #000 !important;
    padding: 10px 24px !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
}
.nc-bc-link { color: #888 !important; text-decoration: none !important; }
.nc-bc-link:hover { color: #FFE100 !important; text-decoration: none !important; }
.nc-bc-current { color: #fff !important; font-weight: 700 !important; }
.nc-bc-sep { color: #555 !important; }

/* ── MAIN LAYOUT ─────────────────────────────────────────── */
.nc-cat-layout {
    display: flex !important;
    align-items: flex-start !important;
    width: 100% !important;
    padding: 0 24px 60px 24px !important;
    box-sizing: border-box !important;
}

/* ── SIDEBAR ─────────────────────────────────────────────── */
.nc-cat-sidebar {
    flex: 0 0 190px !important;
    width: 190px !important;
    min-width: 190px !important;
    padding: 24px 0 !important;
    box-sizing: border-box !important;
    border-right: 1px solid #e0e0e0 !important;
    position: sticky !important;
    top: 0 !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    align-self: flex-start !important;
}
.nc-sidebar-block {
    border-bottom: 1px solid #ebebeb !important;
    padding: 16px 16px 16px 0 !important;
}
.nc-sidebar-block:last-child { border-bottom: none !important; }
.nc-sidebar-section__label {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
    color: #111 !important;
    margin-bottom: 10px !important;
    display: block !important;
}
.nc-sidebar-catlist { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.nc-sidebar-catlist li { margin: 0 !important; padding: 0 !important; }
.nc-sidebar-catlist a {
    display: block !important;
    padding: 5px 0 5px 10px !important;
    color: #666 !important;
    font-size: 0.9rem !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
}
.nc-sidebar-catlist a:hover { color: #000 !important; text-decoration: none !important; }

/* ── PRODUCT GRID COL ────────────────────────────────────── */
.nc-cat-grid-col {
    flex: 1 !important;
    min-width: 0 !important;
    padding: 24px 0 0 28px !important;
    box-sizing: border-box !important;
}

/* ── TOPBAR ──────────────────────────────────────────────── */
.nc-cat-topbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #e0e0e0 !important;
    gap: 16px !important;
}
.nc-filter-toggle {
    display: none !important;
    align-items: center !important;
    gap: 6px !important;
    background: #000 !important;
    color: #fff !important;
    border: none !important;
    padding: 8px 14px !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    margin-right: auto !important;
}
.nc-filter-toggle:hover { background: #FFE100 !important; color: #000 !important; }
.nc-cat-topbar__right { display: flex !important; align-items: center !important; gap: 10px !important; }
.nc-sort-label {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
    color: #555 !important;
    white-space: nowrap !important;
}
.nc-sort-form { margin: 0 !important; }
.nc-sort-select {
    border: 1px solid #ccc !important;
    background: #fff !important;
    color: #222 !important;
    font-size: 0.88rem !important;
    padding: 5px 10px !important;
    border-radius: 0 !important;
    cursor: pointer !important;
}

/* ── PRODUCT GRID ────────────────────────────────────────── */
.nc-cat-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
}
.nc-cat-grid > div[class*="col-"],
.nc-cat-grid > article {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: none !important;
}
.nc-cat-grid .savings-container,
.nc-cat-grid .buying-options { display: none !important; }
@media (max-width: 1200px) { .nc-cat-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 900px)  { .nc-cat-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 480px)  { .nc-cat-grid { grid-template-columns: 1fr !important; } }

/* ── EMPTY STATE ─────────────────────────────────────────── */
.nc-cat-empty { padding: 60px 20px !important; text-align: center !important; color: #666 !important; }
.nc-cat-empty__link {
    display: inline-block !important;
    background: #FFE100 !important;
    color: #000 !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 10px 24px !important;
    text-decoration: none !important;
}

/* ── PAGINATION ──────────────────────────────────────────── */
.nc-pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 40px 0 10px !important;
}
.nc-page-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 38px !important;
    height: 38px !important;
    padding: 0 10px !important;
    border: 1px solid #ddd !important;
    color: #444 !important;
    font-size: 0.9rem !important;
    text-decoration: none !important;
    background: #fff !important;
}
.nc-page-link:hover { background: #000 !important; color: #fff !important; border-color: #000 !important; text-decoration: none !important; }
.nc-page-current { background: #FFE100 !important; color: #000 !important; border-color: #c8b200 !important; font-weight: 700 !important; }

/* ── MOBILE SIDEBAR DRAWER ───────────────────────────────── */
@media (max-width: 900px) {
    .nc-cat-layout { padding: 0 12px 40px 12px !important; }
    .nc-filter-toggle { display: inline-flex !important; }
    .nc-cat-topbar { justify-content: space-between !important; }
    .nc-cat-sidebar {
        position: fixed !important;
        top: 0 !important;
        left: -270px !important;
        width: 260px !important;
        min-width: 260px !important;
        height: 100vh !important;
        max-height: 100vh !important;
        z-index: 1050 !important;
        background: #fff !important;
        box-shadow: 4px 0 24px rgba(0,0,0,0.2) !important;
        border-right: none !important;
        overflow-y: auto !important;
        transition: left 0.3s ease !important;
        padding: 24px 20px !important;
    }
    .nc-cat-sidebar.nc-sidebar--open { left: 0 !important; }
    .nc-cat-grid-col { padding-left: 0 !important; width: 100% !important; }
}

/* ── SIDEBAR FILTER ENHANCEMENTS ─────────────────────────── */
.nc-sidebar-count {
    color: #aaa !important;
    font-size: 0.8em !important;
    font-weight: 400 !important;
}
.nc-sidebar-active {
    color: #000 !important;
    font-weight: 700 !important;
    border-left-color: #FFE100 !important;
    background: #fffde0 !important;
    display: block !important;
    padding: 5px 0 5px 10px !important;
    text-decoration: none !important;
}
.nc-sidebar-active:hover { color: #000 !important; text-decoration: none !important; }

/* ── PRICE SLIDER ────────────────────────────────────────── */
.nc-price-slider-wrap {
    padding: 0 4px !important;
}
#nc-price-slider {
    margin: 12px 4px 10px 4px !important;
    height: 4px !important;
    background: #ddd !important;
    border: none !important;
    border-radius: 0 !important;
}
#nc-price-slider .ui-slider-range {
    background: #FFE100 !important;
    border-radius: 0 !important;
}
#nc-price-slider .ui-slider-handle {
    width: 14px !important;
    height: 14px !important;
    top: -5px !important;
    background: #111 !important;
    border: 2px solid #FFE100 !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    outline: none !important;
}
#nc-price-slider .ui-slider-handle:hover,
#nc-price-slider .ui-slider-handle:focus {
    background: #FFE100 !important;
    border-color: #111 !important;
}
.nc-price-range-text {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    color: #111 !important;
    margin: 0 0 10px 0 !important;
}
.nc-price-btn {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    background: #111 !important;
    color: #FFE100 !important;
    border: none !important;
    padding: 6px 14px !important;
    cursor: pointer !important;
}
.nc-price-btn:hover { background: #FFE100 !important; color: #000 !important; }
.nc-price-clear {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #888 !important;
    text-decoration: none !important;
    margin-left: 8px !important;
}
.nc-price-clear:hover { color: #000 !important; text-decoration: none !important; }

/* ── SIDEBAR CHECKBOX STYLE ──────────────────────────────── */
.nc-sidebar-catlist a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 5px 0 5px 4px !important;
    color: #666 !important;
    font-size: 0.88rem !important;
    text-decoration: none !important;
    gap: 6px !important;
}
.nc-sidebar-catlist a i {
    flex-shrink: 0 !important;
    width: 14px !important;
    color: #aaa !important;
}
.nc-sidebar-catlist a:hover { color: #000 !important; }
.nc-sidebar-catlist a:hover i { color: #000 !important; }
.nc-sidebar-active {
    color: #000 !important;
    font-weight: 700 !important;
}
.nc-sidebar-active i { color: #111 !important; }
.nc-sidebar-count {
    margin-left: auto !important;
    background: #f0f0f0 !important;
    color: #666 !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    padding: 1px 6px !important;
    border-radius: 10px !important;
    flex-shrink: 0 !important;
}
/* ========================================
   NITECORE PRODUCT CARD - V2 DARK FOOTER
   ========================================
   
   Add this CSS to the END of your style.css file.
   It overrides some existing .nitecore-thumb-card styles.
   
   ======================================== */

/* Card structure - grey top, dark footer */
.nitecore-thumb-card {
    display: flex !important;
    flex-direction: column !important;
    border: none !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #e8e8e8 !important;
}

/* Image panel - light grey background */
.nitecore-img-panel {
    background: #e8e8e8 !important;
    padding: 20px !important;
    margin: 0 !important;
    border-bottom: none !important;
    flex-shrink: 0 !important;
}

/* Hide old text elements (replaced by footer) */
.nitecore-thumb-card .card-title.nitecore-sku,
.nitecore-thumb-card .nitecore-short-desc,
.nitecore-thumb-card .buying-options,
.nitecore-thumb-card .savings-container {
    display: none !important;
}

/* ========================================
   DARK FOOTER BAR
   ======================================== */

.nc-thumb-footer {
    background: #303030 !important;
    padding: 16px 14px 14px 14px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    position: relative !important;
}

/* SKU / Product Name */
.nc-thumb-sku {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

.nc-thumb-sku a {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.5rem !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.5px !important;
}

.nc-thumb-sku a:hover {
    color: #FFE100 !important;
    text-decoration: none !important;
}

/* Subtitle */
.nc-thumb-subtitle {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.1rem !important;
    color: #aaaaaa !important;
    margin: 2px 0 0 0 !important;
    padding: 0 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
}

/* Price */
.nc-thumb-price {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.4rem !important;
    color: #ffffff !important;
    margin: 6px 0 0 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* ========================================
   HOVER ADD TO CART BUTTON
   ======================================== */

.nc-thumb-cart-form {
    margin: 0 !important;
    padding: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    transition: max-height 0.25s ease, opacity 0.25s ease, margin-top 0.25s ease !important;
}

/* Show on card hover */
.nitecore-thumb-card:hover .nc-thumb-cart-form {
    max-height: 50px !important;
    opacity: 1 !important;
    margin-top: 10px !important;
}

/* Button styling */
.nc-thumb-cart-btn {
    width: 100% !important;
    background: #54c351 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 10px 16px !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: background 0.15s ease !important;
}

.nc-thumb-cart-btn:hover {
    background: #45a344 !important;
    color: #ffffff !important;
}

/* Pre-order variant */
.nc-thumb-cart-btn--preorder {
    background: #f0ad4e !important;
    color: #000000 !important;
}

.nc-thumb-cart-btn--preorder:hover {
    background: #ffffff !important;
}

/* Backorder variant */
.nc-thumb-cart-btn--backorder {
    background: #6c757d !important;
    color: #ffffff !important;
}

.nc-thumb-cart-btn--backorder:hover {
    background: #aaaaaa !important;
    color: #000000 !important;
}

/* ========================================
   MOBILE ADJUSTMENTS
   ======================================== */

@media (max-width: 768px) {
    .nc-thumb-footer {
        padding: 12px 10px 10px 10px !important;
    }
    
    .nc-thumb-sku a {
        font-size: 1.2rem !important;
    }
    
    .nc-thumb-subtitle {
        font-size: 0.95rem !important;
    }
    
    .nc-thumb-price {
        font-size: 1.2rem !important;
    }
    
    /* Always show button on mobile (no hover) */
    .nc-thumb-cart-form {
        max-height: 50px !important;
        opacity: 1 !important;
        margin-top: 10px !important;
    }
}

/* ========================================
   GRID ADJUSTMENTS FOR NEW CARD
   ======================================== */

/* Let cards grow naturally - remove forced square aspect */
.nc-cat-grid .thumbnail > a,
.nc-cat-grid .thumbnail .thumb-wrap,
.nc-cat-grid .thumbnail .img-wrap,
.nc-cat-grid .nitecore-img-panel {
    aspect-ratio: 1 / 1 !important;
}
