:root {
    /* Racing/Bone Palette */
    --racing-bone: #f4f1ea;
    /* Color Hueso / Bone */
    --racing-bone-dark: #e8e4db;
    /* Slightly darker bone for sections */
    --racing-red: #ff3333;
    /* Bright Racing Red */
    --racing-red-dark: #cc0000;
    --racing-black: #111111;
    /* Carbon Black */
    --racing-carbon: #1a1a1a;
    --racing-grey: #333333;
    --racing-yellow: #ffcc00;
    /* For badges/highlights */

    --racing-blue: #2e5bf0;
    /* Electric Racing Blue */

    --text-main: #111111;
    --text-muted: #555555;

    /* Override Theme Variables */
    --tp-common-white: var(--racing-bone);
    --tp-common-black: var(--racing-black);
    --tp-common-black-1: var(--racing-carbon);
    --tp-grey-1: var(--text-muted);

    /* Reassign Theme Accents */
    --tp-theme-primary: var(--racing-blue);
    /* Updated to Blue */
    --tp-theme-secondary: var(--racing-black);
    --tp-common-blue: var(--racing-blue);
    --tp-common-yellow: var(--racing-yellow);
}

body {
    background-color: var(--racing-bone);
    color: var(--text-main);
    font-family: 'Kanit', sans-serif;
    /* Racing vibe font if available, or fallback */
}

/* Force Bone backgrounds */
.tp-bg-common-white,
.sticky-white-bg,
.tp-header-area.pre-header,
.cartmini__area,
.tp-offcanvas,
.al-hero-shop-item,
[data-bg-color] {
    background-color: var(--racing-bone) !important;
    color: var(--text-main) !important;
}

/* Header Specifics */
.tp-header-area {
    border-bottom: 2px solid var(--racing-blue);
    /* Blue stripe */
    /* Racing stripe */
    /* Racing stripe */
    background-color: var(--racing-bone) !important;
}

/* Hide Black Rhombus/Shape */
.tp-header-pb-logobg {
    display: none !important;
}

/* Text Headers */
h1,
h2,
h3,
h4,
h5,
h6,
.al-hero-shop-title {
    color: var(--racing-black) !important;
    text-transform: uppercase;
    font-style: italic;
    /* Speed look */
    letter-spacing: -1px;
}

.al-hero-shop-title {
    text-shadow: none;
    border-left: 5px solid var(--racing-blue);
    /* Blue Accent */
    padding-left: 15px;
}

/* Navigation */
.tp-main-menu ul li a {
    color: var(--racing-blue) !important;
    font-weight: 800;
    /* Bolder */
    text-transform: uppercase;
    text-shadow: 0 0 1px rgba(46, 91, 240, 0.3);
    /* Subtle electric glow */
}

.tp-main-menu ul li a:hover {
    color: var(--racing-black) !important;
}

/* Buttons - Racing Style */
.al-shop-btn,
.tp-btn,
.btn,
.al-shop-btn-border {
    border: 2px solid var(--racing-black);
    color: var(--racing-black) !important;
    background: transparent;
    border-radius: 0;
    /* Boxy racing look */
    font-weight: 800;
    text-transform: uppercase;
    font-style: italic;
    box-shadow: 4px 4px 0px var(--racing-red);
    /* Offset shadow */
    transition: all 0.2s ease;
    text-shadow: none;
}

.al-shop-btn:hover,
.tp-btn:hover,
.btn:hover,
.al-shop-btn-border:hover {
    background-color: var(--racing-black) !important;
    color: var(--racing-bone) !important;
    box-shadow: 2px 2px 0px var(--racing-red);
    transform: translate(2px, 2px);
    border-color: var(--racing-black);
}

/* Product Cards */
.tp-product-item {
    background-color: #ffffff !important;
    /* White card on Bone bg */
    border: 1px solid #ddd;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s;
}

.tp-product-item:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    border-bottom: 3px solid var(--racing-red);
    transform: translateY(-5px);
}

.tp-product-title a {
    color: var(--racing-black) !important;
}

.tp-product-price {
    color: var(--racing-red) !important;
    font-weight: 900;
    font-size: 1.2em;
}

/* Badges */
.al-hero-badge {
    background: var(--racing-black);
    border: none;
    color: #fff;
    font-weight: bold;
    transform: skew(-10deg);
    /* Racing skew */
}

.product-discount {
    background-color: var(--racing-red);
    color: white;
    border-radius: 0;
}

/* Inputs */
input,
textarea,
select {
    background-color: #fff !important;
    border: 2px solid #ddd !important;
    color: var(--racing-black) !important;
    border-radius: 0 !important;
}

input:focus,
textarea:focus {
    border-color: var(--racing-red) !important;
}

/* Cart & Offcanvas */
.cartmini__area,
.tp-offcanvas {
    background-color: var(--racing-bone) !important;
    border-left: 5px solid var(--racing-red);
}

.cartmini__title a {
    color: var(--racing-black) !important;
}

.close-btn svg,
.cartmini__close-btn i,
.cartmini__del i {
    color: var(--racing-black) !important;
}

/* Fix Cart/Helpline overlap */
.tp-header-pb-cart {
    margin-right: 20px;
}

.tp-header-pb-helpline {
    margin-left: 20px !important;
    padding-left: 20px !important;
    border-left: 1px solid #ddd;
}

/* Compare Cards */
.al-compare-card {
    background: #ffffff;
    border: 1px solid #eee;
    box-shadow: 5px 5px 0px rgba(0, 0, 0, 0.1);
}

.al-compare-card:hover {
    border: 1px solid var(--racing-red);
    box-shadow: 8px 8px 0px rgba(255, 51, 51, 0.2);
}

.al-compare-title-strong {
    color: var(--racing-black);
}

.al-compare-pill {
    background-color: var(--racing-black);
    color: var(--racing-yellow);
    font-weight: bold;
    text-transform: uppercase;
}

/* Footer Styling */
.al-footer-shop-area {
    background-color: var(--racing-bone-dark) !important;
    border-top: 3px solid var(--racing-blue);
}

.al-footer-shop-widget-title {
    color: var(--racing-black) !important;
    text-transform: uppercase;
    font-style: italic;
    border-bottom: 2px solid var(--racing-blue);
    padding-bottom: 10px;
    margin-bottom: 15px;
}

.al-footer-shop-widget-content ul li a {
    color: var(--racing-blue) !important;
    font-weight: 600;
}

.al-footer-shop-widget-content ul li a:hover {
    color: var(--racing-black) !important;
}

.al-footer-shop-bottom {
    background-color: var(--racing-black) !important;
}

.al-footer-shop-bottom p,
.al-footer-shop-bottom a {
    color: var(--racing-bone) !important;
}

.al-footer-shop-copyright p {
    color: rgba(255, 255, 255, 0.7) !important;
}