/*
Theme Name: Volts Mini Bikes
Theme URI: https://voltminibikes.com
Author: Volts
Author URI: https://voltminibikes.com
Description: Custom WooCommerce theme for Volts Mini Bikes — pure black & white, offline payments (Bank Transfer, WhatsApp, Bitcoin, USDT).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: Proprietary
Text Domain: volts
*/

/* =============================================
   GOOGLE FONTS
   ============================================= */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow:wght@300;400;500;600&family=Barlow+Condensed:wght@400;600;700&display=swap');

/* =============================================
   RESET & GLOBAL
   ============================================= */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

:root {
    --bk:  #000000;
    --g1:  #0d0d0d;
    --g2:  #161616;
    --g3:  #222222;
    --g4:  #333333;
    --g5:  #555555;
    --wh:  #f0f0f0;
    --tx:  #c0c0b8;
    --ac:  #ffffff;
    --fd:  'Bebas Neue', sans-serif;
    --fc:  'Barlow Condensed', sans-serif;
    --fb:  'Barlow', sans-serif;
    --nh:  70px;
    --r:   4px;
    --t:   0.3s ease;
    --max: 1300px;
}

body {
    background: var(--bk);
    color: var(--tx);
    font-family: var(--fb);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

a { color: inherit; text-decoration: none; transition: color var(--t); }
img { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font-family: inherit; }
ul { list-style: none; }

/* =============================================
   LAYOUT
   ============================================= */
.volts-wrap { max-width: var(--max); margin: 0 auto; padding: 0 36px; }
.site-main   { padding-top: var(--nh); min-height: 60vh; }

/* =============================================
   TYPOGRAPHY
   ============================================= */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--fd);
    color: var(--wh);
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1;
}
p { color: var(--tx); }

/* =============================================
   BUTTONS (global)
   ============================================= */
.volts-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #payment #place_order,
.wc-proceed-to-checkout a.checkout-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: var(--fc) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 12px 24px !important;
    border-radius: var(--r) !important;
    border: none !important;
    cursor: pointer !important;
    background: var(--g3) !important;
    color: var(--wh) !important;
    transition: background var(--t), color var(--t), transform var(--t), box-shadow var(--t) !important;
    text-decoration: none !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #payment #place_order,
.wc-proceed-to-checkout a.checkout-button {
    background: #fff !important;
    color: #000 !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #payment #place_order:hover,
.wc-proceed-to-checkout a.checkout-button:hover {
    background: #e8e8e8 !important;
    color: #000 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(255,255,255,0.12) !important;
}

/* =============================================
   NAVIGATION
   ============================================= */
.site-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 1000;
    height: var(--nh);
    display: flex;
    align-items: center;
    padding: 0 40px;
    transition: background var(--t), backdrop-filter var(--t);
}
.site-header.scrolled {
    background: rgba(0,0,0,0.93);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(255,255,255,0.07);
}
.header-inner {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: var(--max);
    margin: 0 auto;
}
.site-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-right: auto;
    text-decoration: none;
}
.site-logo img { height: 36px; width: auto; }
.site-logo .logo-text {
    font-family: var(--fd);
    font-size: 26px;
    color: var(--wh);
    letter-spacing: 3px;
}
.site-nav { display: flex; align-items: center; gap: 36px; }
.site-nav a {
    font-family: var(--fc);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--wh);
    opacity: 0.6;
    transition: opacity var(--t), color var(--t);
}
.site-nav a:hover,
.site-nav a.current { opacity: 1; color: #fff; }
.nav-shop-btn {
    margin-left: 16px !important;
    background: #fff !important;
    color: #000 !important;
    opacity: 1 !important;
    padding: 9px 22px !important;
    border-radius: var(--r) !important;
    font-weight: 700 !important;
    transition: background var(--t), transform var(--t) !important;
}
.nav-shop-btn:hover { background: #e0e0e0 !important; transform: translateY(-1px) !important; }
.nav-cart-link {
    position: relative;
    opacity: 0.65 !important;
    padding: 4px !important;
}
.nav-cart-link:hover { opacity: 1 !important; }
.cart-count {
    position: absolute;
    top: -4px; right: -4px;
    background: #fff;
    color: #000;
    font-size: 9px;
    font-weight: 700;
    width: 16px; height: 16px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-family: var(--fb);
}
.menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    padding: 6px;
    margin-left: 12px;
    background: none;
    border: none;
}
.menu-toggle span {
    display: block;
    width: 24px; height: 2px;
    background: var(--wh);
    transition: all 0.3s;
}

/* =============================================
   PAGE CONTENT
   ============================================= */
.entry-content,
.page-content { padding: 60px 0; }

.woocommerce-page .site-main,
.woocommerce .site-main {
    padding-top: calc(var(--nh) + 40px);
    padding-bottom: 80px;
}

/* Page titles */
.page-title,
.woocommerce-products-header__title,
.woocommerce .page-title {
    font-family: var(--fd) !important;
    font-size: clamp(36px, 5vw, 72px) !important;
    color: var(--wh) !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 40px !important;
}

/* Breadcrumbs */
.woocommerce-breadcrumb {
    font-family: var(--fc) !important;
    font-size: 12px !important;
    letter-spacing: 1.5px !important;
    color: var(--g5) !important;
    text-transform: uppercase !important;
    margin-bottom: 32px !important;
}
.woocommerce-breadcrumb a { color: var(--g5) !important; }
.woocommerce-breadcrumb a:hover { color: #fff !important; }

/* =============================================
   SHOP / PRODUCT ARCHIVE
   ============================================= */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
}
.woocommerce ul.products li.product {
    background: var(--g1) !important;
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    transition: transform var(--t), box-shadow var(--t) !important;
    border: 1px solid transparent !important;
}
.woocommerce ul.products li.product:hover {
    border-color: rgba(255,255,255,0.3) !important;
    z-index: 1 !important;
}
.woocommerce ul.products li.product a img {
    transition: transform 0.6s ease !important;
    aspect-ratio: 4/3 !important;
    object-fit: cover !important;
    width: 100% !important;
    height: auto !important;
    background: var(--g2) !important;
}
.woocommerce ul.products li.product:hover a img { transform: scale(1.05) !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--fc) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--wh) !important;
    padding: 16px 20px 6px !important;
    letter-spacing: 0.5px !important;
}
.woocommerce ul.products li.product .price {
    font-family: var(--fd) !important;
    font-size: 22px !important;
    color: var(--wh) !important;
    padding: 0 20px 16px !important;
    letter-spacing: 1px !important;
    display: block !important;
}
.woocommerce ul.products li.product .price del {
    color: var(--g5) !important;
    font-size: 14px !important;
    font-family: var(--fb) !important;
}
.woocommerce ul.products li.product .button {
    margin: 0 20px 20px !important;
    width: calc(100% - 40px) !important;
}
.woocommerce span.onsale {
    background: #fff !important;
    color: #000 !important;
    font-family: var(--fc) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 2px !important;
    padding: 4px 10px !important;
    min-width: auto !important;
    min-height: auto !important;
    line-height: 1.4 !important;
}
.woocommerce-result-count {
    font-family: var(--fc) !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
    color: var(--g5) !important;
    text-transform: uppercase !important;
}
.woocommerce-ordering select {
    background: var(--g2) !important;
    color: var(--wh) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    font-family: var(--fc) !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    padding: 8px 32px 8px 14px !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23555' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    background: var(--g2) !important;
    color: var(--wh) !important;
    border-color: var(--g3) !important;
    font-family: var(--fc) !important;
    font-size: 13px !important;
    transition: background var(--t), color var(--t) !important;
    padding: 8px 14px !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #fff !important;
    color: #000 !important;
    border-color: #fff !important;
}

/* =============================================
   SINGLE PRODUCT
   ============================================= */
.woocommerce div.product {
    background: var(--bk) !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 60px !important;
    align-items: start !important;
}
.woocommerce div.product .woocommerce-product-gallery {
    grid-column: 1 !important;
}
.woocommerce div.product .summary {
    grid-column: 2 !important;
}
.woocommerce div.product .product_title {
    font-family: var(--fd) !important;
    font-size: clamp(32px, 4vw, 56px) !important;
    color: var(--wh) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    line-height: 0.95 !important;
    margin-bottom: 20px !important;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    font-family: var(--fd) !important;
    font-size: 32px !important;
    color: var(--wh) !important;
    letter-spacing: 1px !important;
    margin-bottom: 20px !important;
}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
    color: var(--g5) !important;
    font-size: 18px !important;
    font-family: var(--fb) !important;
}
.woocommerce div.product .woocommerce-product-details__short-description p {
    font-size: 15px !important;
    font-weight: 300 !important;
    color: var(--tx) !important;
    line-height: 1.8 !important;
    margin-bottom: 24px !important;
}
.woocommerce div.product form.cart { margin-bottom: 24px !important; }
.woocommerce div.product form.cart .quantity input.qty {
    background: var(--g2) !important;
    border: 1px solid var(--g3) !important;
    color: var(--wh) !important;
    font-family: var(--fc) !important;
    font-size: 16px !important;
    border-radius: var(--r) !important;
    text-align: center !important;
    padding: 10px 16px !important;
    width: 80px !important;
}
.woocommerce div.product form.cart .quantity input.qty:focus {
    border-color: #fff !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,0.08) !important;
}
.woocommerce div.product form.cart button.single_add_to_cart_button {
    background: #fff !important;
    color: #000 !important;
    font-size: 14px !important;
    padding: 12px 32px !important;
    flex: 1 !important;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover {
    background: #e0e0e0 !important;
}
/* Product image gallery */
.woocommerce-product-gallery__image img {
    border-radius: var(--r) !important;
    background: var(--g1) !important;
}
/* Product meta */
.woocommerce div.product .product_meta {
    font-family: var(--fc) !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    color: var(--g5) !important;
    text-transform: uppercase !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--g3) !important;
}
.woocommerce div.product .product_meta a { color: var(--g5) !important; }
.woocommerce div.product .product_meta a:hover { color: #fff !important; }

/* Product tabs */
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1 !important; margin-top: 60px !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--g3) !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--g3) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: var(--g2) !important;
    border-color: var(--g3) !important;
    border-radius: 0 !important;
    margin: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-family: var(--fc) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--g5) !important;
    padding: 14px 24px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover { background: var(--g3) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a { color: #fff !important; }
.woocommerce div.product .woocommerce-tabs .panel {
    background: var(--g2) !important;
    border: 1px solid var(--g3) !important;
    border-top: none !important;
    padding: 32px !important;
    color: var(--tx) !important;
    margin-top: 0 !important;
}

/* Related products */
.related h2, .upsells h2 {
    font-family: var(--fd) !important;
    font-size: 36px !important;
    color: var(--wh) !important;
    margin-bottom: 32px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

/* =============================================
   CART
   ============================================= */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main { background: var(--bk) !important; }

.woocommerce table.shop_table {
    background: var(--g1) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    border-collapse: separate !important;
    color: var(--tx) !important;
    width: 100% !important;
}
.woocommerce table.shop_table th {
    font-family: var(--fc) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--g5) !important;
    background: var(--g2) !important;
    border-bottom: 1px solid var(--g3) !important;
    padding: 14px 20px !important;
}
.woocommerce table.shop_table td {
    border-top: 1px solid var(--g3) !important;
    padding: 16px 20px !important;
    color: var(--tx) !important;
    vertical-align: middle !important;
}
.woocommerce table.shop_table .product-name a {
    font-family: var(--fc) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--wh) !important;
    letter-spacing: 0.5px !important;
}
.woocommerce table.shop_table .product-name a:hover { color: #fff !important; }
.woocommerce table.shop_table .amount,
.woocommerce table.shop_table .product-subtotal .amount {
    font-family: var(--fd) !important;
    font-size: 20px !important;
    color: var(--wh) !important;
    letter-spacing: 1px !important;
}
.woocommerce .cart_totals, .woocommerce .checkout_coupon {
    background: var(--g1) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    padding: 28px !important;
}
.woocommerce .cart_totals h2 {
    font-family: var(--fd) !important;
    font-size: 28px !important;
    color: var(--wh) !important;
    margin-bottom: 20px !important;
}
.woocommerce .cart_totals .order-total .amount {
    font-family: var(--fd) !important;
    font-size: 28px !important;
    color: #fff !important;
    letter-spacing: 1px !important;
}
.woocommerce-remove-coupon { color: var(--g5) !important; }
.woocommerce-remove-coupon:hover { color: #fff !important; }

/* =============================================
   CHECKOUT
   ============================================= */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading {
    font-family: var(--fd) !important;
    font-size: 28px !important;
    color: var(--wh) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 24px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid var(--g3) !important;
}

/* Checkout fields */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text {
    background: var(--g2) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    color: var(--wh) !important;
    font-family: var(--fb) !important;
    font-size: 14px !important;
    padding: 12px 16px !important;
    width: 100% !important;
    transition: border-color var(--t), box-shadow var(--t) !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    border-color: #fff !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,0.07) !important;
    outline: none !important;
}
.woocommerce form .form-row input.input-text::placeholder { color: var(--g5) !important; }
.woocommerce form .form-row label {
    font-family: var(--fc) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--g5) !important;
    margin-bottom: 8px !important;
    display: block !important;
}
.woocommerce form .form-row label abbr { color: var(--g5) !important; }

/* Order review */
#order_review {
    background: var(--g1) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    padding: 28px !important;
}

/* Payment methods */
#payment {
    background: var(--g1) !important;
    border-radius: var(--r) !important;
    padding: 0 !important;
    overflow: hidden !important;
}
#payment ul.payment_methods {
    border-bottom: 1px solid var(--g3) !important;
    padding: 0 !important;
    margin: 0 !important;
}
#payment ul.payment_methods li {
    padding: 18px 24px !important;
    border-bottom: 1px solid var(--g3) !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}
#payment ul.payment_methods li:last-child { border-bottom: none !important; }
#payment ul.payment_methods li label {
    font-family: var(--fc) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    color: var(--wh) !important;
    cursor: pointer !important;
}
#payment ul.payment_methods li input[type="radio"] { margin-top: 4px !important; accent-color: #fff !important; }
.payment_box {
    background: var(--g2) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    padding: 16px 20px !important;
    margin-top: 10px !important;
    width: 100% !important;
}
.payment_box p {
    font-size: 13px !important;
    color: var(--tx) !important;
    margin: 0 !important;
    line-height: 1.7 !important;
}
.payment_box .volts-payment-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
}
.payment_box .volts-payment-details .detail-row {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: var(--fc);
    font-size: 13px;
    letter-spacing: 1px;
    color: var(--tx);
}
.payment_box .volts-payment-details .detail-label {
    font-weight: 700;
    color: var(--wh);
    min-width: 100px;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 2px;
}
.payment_box .volts-payment-details .detail-value {
    font-size: 13px;
    color: var(--tx);
    word-break: break-all;
}
.payment_box .volts-payment-details .copy-btn {
    background: var(--g3);
    color: var(--wh);
    border: none;
    border-radius: 3px;
    padding: 3px 8px;
    font-family: var(--fc);
    font-size: 10px;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: background var(--t);
}
.payment_box .volts-payment-details .copy-btn:hover { background: #fff; color: #000; }

#payment .place-order {
    padding: 24px !important;
}
#payment .place-order .button {
    width: 100% !important;
    font-size: 15px !important;
    padding: 16px 32px !important;
    min-height: 52px !important;
}

/* =============================================
   MY ACCOUNT
   ============================================= */
.woocommerce-account .woocommerce-MyAccount-navigation {
    background: var(--g1) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    padding: 8px 0 !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    font-family: var(--fc) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--g5) !important;
    padding: 12px 20px !important;
    transition: color var(--t), background var(--t) !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    color: #fff !important;
    background: var(--g2) !important;
}

/* =============================================
   NOTICES
   ============================================= */
.woocommerce-message,
.woocommerce-info {
    background: var(--g1) !important;
    border-top-color: #fff !important;
    color: var(--wh) !important;
    font-family: var(--fc) !important;
    letter-spacing: 0.5px !important;
}
.woocommerce-error {
    background: rgba(200,0,0,0.08) !important;
    border-top-color: #cc3333 !important;
    color: #ff7070 !important;
}
.woocommerce-message a.button,
.woocommerce-info a.button {
    background: #fff !important;
    color: #000 !important;
}

/* =============================================
   SIDEBAR / WIDGETS
   ============================================= */
.widget-area .widget {
    background: var(--g1) !important;
    border: 1px solid var(--g3) !important;
    border-radius: var(--r) !important;
    padding: 24px !important;
    margin-bottom: 20px !important;
}
.widget-title, .widgettitle {
    font-family: var(--fc) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: var(--wh) !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--g3) !important;
}
.widget ul li { padding: 6px 0; border-bottom: 1px solid var(--g3); }
.widget ul li:last-child { border: none; }
.widget ul li a { font-size: 13px !important; color: var(--g5) !important; }
.widget ul li a:hover { color: #fff !important; }
.woocommerce .widget_price_filter .price_slider_wrapper .ui-slider { background: var(--g3) !important; }
.woocommerce .widget_price_filter .ui-slider .ui-slider-range { background: #fff !important; }
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle { background: #fff !important; border-color: #fff !important; }

/* =============================================
   FOOTER
   ============================================= */
.site-footer {
    background: #000 !important;
    border-top: 1px solid var(--g2) !important;
    padding: 56px 0 28px !important;
    color: var(--g5) !important;
}
.footer-widgets {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 44px;
}
.footer-brand .footer-logo {
    font-family: var(--fd);
    font-size: 30px;
    color: var(--wh);
    letter-spacing: 4px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.footer-brand .footer-logo img { height: 32px; }
.footer-brand p { font-size: 13px; font-weight: 300; color: var(--g5); line-height: 1.7; max-width: 240px; }
.footer-social-icons { display: flex; gap: 10px; margin-top: 20px; }
.footer-social-icons a {
    width: 34px; height: 34px;
    background: var(--g3);
    border-radius: var(--r);
    display: flex; align-items: center; justify-content: center;
    transition: background var(--t);
}
.footer-social-icons a:hover { background: #fff; }
.footer-social-icons a:hover svg { color: #000; }
.footer-social-icons svg { color: var(--g5); transition: color var(--t); }
.footer-col h4 {
    font-family: var(--fc);
    font-size: 10px; font-weight: 700; letter-spacing: 3px;
    text-transform: uppercase; color: var(--wh);
    margin-bottom: 18px;
}
.footer-col ul { display: flex; flex-direction: column; gap: 9px; }
.footer-col li a { font-size: 13px; color: var(--g5); transition: color var(--t); }
.footer-col li a:hover { color: #fff; }
.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 28px;
    border-top: 1px solid var(--g2);
    font-size: 12px;
    color: var(--g5);
    flex-wrap: wrap;
    gap: 12px;
}
.footer-bottom a { color: var(--g5); transition: color var(--t); }
.footer-bottom a:hover { color: #fff; }

/* =============================================
   SCROLLBAR & SELECTION
   ============================================= */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #000; }
::-webkit-scrollbar-thumb { background: var(--g4); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #fff; }
::selection { background: #fff; color: #000; }

/* =============================================
   UTILITY
   ============================================= */
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }

/* WA float */
.wa-float {
    position: fixed; bottom: 28px; right: 28px; z-index: 999;
    display: flex; align-items: center; gap: 12px;
    background: #25D366; color: #fff;
    font-family: var(--fc); font-size: 13px; font-weight: 700; letter-spacing: 1px;
    padding: 13px 20px; border-radius: 40px;
    box-shadow: 0 6px 28px rgba(37,211,102,0.35);
    transition: transform var(--t), box-shadow var(--t);
    text-decoration: none;
}
.wa-float:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 12px 40px rgba(37,211,102,0.45); color: #fff; }
.wa-float svg { flex-shrink: 0; }

/* =============================================
   RESPONSIVE
   ============================================= */
@media (max-width: 1024px) {
    .woocommerce div.product { grid-template-columns: 1fr; gap: 40px; }
    .woocommerce div.product .woocommerce-product-gallery { grid-column: 1; }
    .woocommerce div.product .summary { grid-column: 1; }
    .footer-widgets { grid-template-columns: 1fr 1fr; }
    .footer-brand { grid-column: span 2; }
}
@media (max-width: 768px) {
    :root { --nh: 60px; }
    .volts-wrap { padding: 0 20px; }
    .site-header { padding: 0 20px; }
    .site-nav { display: none; }
    .site-nav.open {
        display: flex; flex-direction: column; gap: 0;
        position: fixed; top: var(--nh); left: 0; right: 0;
        background: rgba(0,0,0,0.98);
        padding: 16px 24px 24px;
        border-bottom: 1px solid var(--g2);
    }
    .site-nav.open a { padding: 12px 0; border-bottom: 1px solid var(--g2); opacity: 1; }
    .site-nav.open a:last-child { border: none; }
    .menu-toggle { display: flex; }
    .woocommerce ul.products { grid-template-columns: 1fr 1fr !important; }
    .footer-widgets { grid-template-columns: 1fr; }
    .footer-brand { grid-column: 1; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .wa-float .wa-label { display: none; }
    .wa-float { padding: 14px; border-radius: 50%; width: 52px; height: 52px; justify-content: center; }
}
@media (max-width: 480px) {
    .woocommerce ul.products { grid-template-columns: 1fr !important; }
}
/* =============================================
   VOLTS HOMEPAGE SECTIONS CSS
   Appended via wp_enqueue_style — applies only
   on pages using the Volts Homepage template.
   ============================================= */

/* ── HERO ──────────────────────────────────── */
.hero{position:relative;height:100svh;min-height:600px;display:flex;align-items:center;overflow:hidden;background:#000}
.hbg{position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 60% 50%,rgba(255,255,255,.04) 0%,transparent 70%),radial-gradient(ellipse 40% 60% at 15% 80%,rgba(255,255,255,.02) 0%,transparent 60%)}
.hbg::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(255,255,255,.01) 60px,rgba(255,255,255,.01) 61px),repeating-linear-gradient(90deg,transparent,transparent 60px,rgba(255,255,255,.01) 60px,rgba(255,255,255,.01) 61px)}
.hmedia{position:absolute;inset:0;overflow:hidden}
.hmedia video{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.28}
.hfade{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.96) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.1) 100%)}
.hcon{position:relative;z-index:2;width:100%;max-width:1300px;padding:0 36px;padding-top:var(--nh);margin:0 auto}
.heyb{display:inline-flex;align-items:center;gap:10px;font-family:var(--fc);font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:#fff;margin-bottom:18px;opacity:0;transform:translateY(18px);animation:fup .7s .2s forwards}
.heyb::before{content:'';width:26px;height:1px;background:#fff;display:block}
.hh1{font-family:var(--fd);font-size:clamp(62px,9.5vw,136px);line-height:.9;color:#fff;letter-spacing:2px;text-transform:uppercase;margin-bottom:22px;opacity:0;transform:translateY(28px);animation:fup .8s .35s forwards}
.hh1 em{color:#fff;font-style:normal;opacity:.45}
.hsub{font-size:16px;font-weight:300;color:rgba(255,255,255,.6);max-width:420px;line-height:1.75;margin-bottom:36px;opacity:0;transform:translateY(18px);animation:fup .7s .5s forwards}
.hbtns{display:flex;gap:14px;flex-wrap:wrap;opacity:0;transform:translateY(18px);animation:fup .7s .65s forwards}
.hscroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--fc);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.3);opacity:0;animation:fin 1s 1.3s forwards;cursor:pointer;z-index:2}
.sbar{width:1px;height:38px;background:linear-gradient(to bottom,rgba(255,255,255,.3),transparent);animation:sanim 2s infinite}

/* ── BUTTONS (homepage) ───────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--fc);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px 30px;border-radius:var(--r);border:none;cursor:pointer;text-decoration:none;transition:background var(--t),transform var(--t),box-shadow var(--t),color var(--t)}
.btn svg{transition:transform var(--t);flex-shrink:0}
.btn:hover svg{transform:translateX(4px)}
.bwh{background:#fff;color:#000!important}
.bwh:hover{background:#e0e0e0;transform:translateY(-2px);box-shadow:0 8px 32px rgba(255,255,255,.15)}
.bwa{background:#25D366;color:#fff!important}
.bwa:hover{background:#1ebc58;transform:translateY(-2px);box-shadow:0 8px 32px rgba(37,211,102,.3)}

/* ── SECTION COMMONS ──────────────────────── */
.bsec,.psec,.asec,.csec{padding:96px 0}
.bsec{background:#000}
.psec{background:var(--g1)}
.asec{background:#000;padding:80px 0}
.csec{background:var(--g1)}
.shd{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:52px;gap:20px;flex-wrap:wrap}
.slbl{font-family:var(--fc);font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:#fff;margin-bottom:10px;display:flex;align-items:center;gap:10px;opacity:.5}
.slbl::before{content:'';width:22px;height:1px;background:#fff;display:block}
.sti{font-family:var(--fd);font-size:clamp(36px,5vw,64px);color:#fff;letter-spacing:1px;line-height:.93;text-transform:uppercase}
.slnk{font-family:var(--fc);font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#fff;opacity:.6;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;transition:gap var(--t),opacity var(--t)}
.slnk:hover{gap:14px;opacity:1}

/* ── BIKES GRID ───────────────────────────── */
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2px}
.bcard{position:relative;background:var(--g1);overflow:hidden}
.bcard::after{content:'';position:absolute;inset:0;border:1px solid transparent;transition:border-color var(--t);z-index:2;pointer-events:none}
.bcard:hover::after{border-color:rgba(255,255,255,.5)}
.bimg{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--g2)}
.bimg img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.bcard:hover .bimg img{transform:scale(1.06)}
.bbadge{position:absolute;top:14px;right:14px;font-family:var(--fc);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:4px 10px;border-radius:2px;z-index:3}
.bsale,.bnew{background:#fff;color:#000}
.bbody{padding:22px 26px 26px;display:flex;flex-direction:column;gap:5px}
.bname{font-family:var(--fc);font-size:22px;font-weight:700;color:#fff;letter-spacing:.5px;line-height:1.2}
.bsku{font-family:var(--fc);font-size:10px;letter-spacing:2px;color:var(--g5);text-transform:uppercase}
.bfoot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--g3)}
.bprice{font-family:var(--fd);font-size:26px;color:#fff;letter-spacing:1px}
.bprice .was{font-size:13px;color:var(--g5);text-decoration:line-through;font-family:var(--fb);letter-spacing:0;display:block;margin-bottom:1px}
.bbtn{display:inline-flex;align-items:center;gap:8px;background:var(--g3);color:#fff;font-family:var(--fc);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:9px 16px;border-radius:var(--r);border:none;cursor:pointer;transition:background var(--t),color var(--t);text-decoration:none}
.bbtn:hover{background:#fff;color:#000}

/* ── PARTS ────────────────────────────────── */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.pcard{background:var(--g2);border:1px solid var(--g3);border-radius:6px;overflow:hidden;transition:border-color var(--t),transform var(--t),box-shadow var(--t)}
.pcard:hover{border-color:rgba(255,255,255,.4);transform:translateY(-5px);box-shadow:0 14px 44px rgba(0,0,0,.6)}
.pimg{aspect-ratio:1;overflow:hidden;background:var(--g3)}
.pimg img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.pcard:hover .pimg img{transform:scale(1.06)}
.pbody{padding:16px 18px 20px}
.pname{font-family:var(--fc);font-size:16px;font-weight:600;color:#fff;margin-bottom:6px;line-height:1.3}
.pprice{font-family:var(--fd);font-size:20px;color:#fff;letter-spacing:1px}
.pbtn{display:block;text-align:center;margin-top:14px;padding:9px;background:transparent;border:1px solid var(--g4);border-radius:var(--r);font-family:var(--fc);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--tx);transition:background var(--t),color var(--t),border-color var(--t);text-decoration:none}
.pbtn:hover{background:#fff;color:#000;border-color:#fff}
.pcats{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px}
.cchip{display:inline-flex;align-items:center;gap:6px;font-family:var(--fc);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:7px 14px;border:1px solid var(--g4);border-radius:20px;color:var(--tx);transition:border-color var(--t),color var(--t);text-decoration:none}
.cchip:hover{border-color:#fff;color:#fff}
.pcta{margin-top:44px;background:var(--g2);border:1px solid var(--g3);border-radius:6px;padding:36px 44px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.pcta h3{font-family:var(--fd);font-size:30px;color:#fff;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px}
.pcta p{font-size:14px;color:var(--g5);font-weight:300}

/* ── ABOUT ────────────────────────────────── */
.agrid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.awrap{position:relative;aspect-ratio:4/3;border-radius:4px;overflow:hidden;background:var(--g2)}
.awrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(20%)}
.awrap::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,transparent 60%);border:1px solid rgba(255,255,255,.07);border-radius:4px;pointer-events:none}
.adesc{font-size:15px;font-weight:300;line-height:1.85;color:var(--tx);margin:22px 0 30px}
.astats{display:flex;gap:36px;margin-top:36px;flex-wrap:wrap}
.snum{font-family:var(--fd);font-size:44px;color:#fff;line-height:1;letter-spacing:1px}
.slb2{font-family:var(--fc);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g5);margin-top:3px}

/* ── SOCIALS STRIP ────────────────────────── */
.sstrip{background:var(--g2);border-top:1px solid var(--g3);border-bottom:1px solid var(--g3);padding:36px 0}
.sstrip-in{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.sbtn{display:inline-flex;align-items:center;gap:9px;font-family:var(--fc);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:11px 20px;border-radius:var(--r);border:1px solid var(--g4);color:var(--tx);transition:border-color var(--t),color var(--t),background var(--t),transform var(--t);text-decoration:none}
.sbtn:hover{border-color:#fff;color:#fff;transform:translateY(-2px)}
.swa{border-color:rgba(37,211,102,.3);color:#25D366;background:rgba(37,211,102,.05)}
.swa:hover{background:rgba(37,211,102,.12);border-color:#25D366}
.sdiv{width:1px;height:24px;background:var(--g4)}

/* ── CONTACT ──────────────────────────────── */
.cgrid{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;align-items:start}
.cinfo>p{font-size:15px;font-weight:300;line-height:1.8;color:var(--tx);margin-bottom:32px}
.cdet{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}
.cico{width:36px;height:36px;background:var(--g3);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cico svg{color:#fff}
.clbl{font-family:var(--fc);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g5);margin-bottom:3px;display:block}
.cdet a,.cdet .cv{font-size:14px;color:var(--tx);transition:color var(--t);display:block}
.cdet a:hover{color:#fff}
.csocrow{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}
.csbtn{display:inline-flex;align-items:center;gap:7px;font-family:var(--fc);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:8px 14px;border:1px solid var(--g4);border-radius:var(--r);color:var(--tx);transition:border-color var(--t),color var(--t);text-decoration:none}
.csbtn:hover{border-color:#fff;color:#fff}
.cform{display:flex;flex-direction:column;gap:16px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fg{display:flex;flex-direction:column;gap:6px}
.fg label{font-family:var(--fc);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g5)}
.fg input,.fg select,.fg textarea{background:var(--g2);border:1px solid var(--g3);border-radius:var(--r);color:#fff;font-size:14px;padding:12px 16px;outline:none;transition:border-color var(--t),box-shadow var(--t);-webkit-appearance:none;appearance:none}
.fg select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23555' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px;cursor:pointer}
.fg select option{background:var(--g2)}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.07)}
.fg textarea{resize:vertical;min-height:120px}
.fg input::placeholder,.fg textarea::placeholder{color:var(--g5)}
.fok{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:var(--r);padding:16px 20px;color:#fff;font-family:var(--fc);font-size:14px;font-weight:600;letter-spacing:1px;text-align:center;display:none}
.ferr{background:rgba(200,0,0,.07);border:1px solid rgba(200,0,0,.2);border-radius:var(--r);padding:12px 16px;color:#ff7070;font-size:13px;display:none}

/* ── REVEAL ───────────────────────────────── */
.rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.rv.vis{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* ── KEYFRAMES ────────────────────────────── */
@keyframes fup{to{opacity:1;transform:none}}
@keyframes fin{to{opacity:1}}
@keyframes sanim{0%,100%{opacity:.3}50%{opacity:.7;transform:scaleY(.75)}}

/* ── RESPONSIVE ───────────────────────────── */
@media(max-width:1024px){.agrid,.cgrid{grid-template-columns:1fr;gap:48px}}
@media(max-width:768px){
  .bsec,.psec,.asec,.csec{padding:68px 0}
  .hcon{padding:0 20px;padding-top:var(--nh)}
  .bgrid{grid-template-columns:1fr;gap:2px}
  .pgrid{grid-template-columns:1fr 1fr}
  .pcta{flex-direction:column;padding:26px 22px}
  .shd{flex-direction:column;align-items:flex-start}
  .frow{grid-template-columns:1fr}
  .astats{gap:22px}
}
