/* ==========================================================================
   Baterías Bernal - Estilos Globales Prémium & WooCommerce
   Paleta: #de0000 (Rojo), #fef102 (Amarillo), #0c0d0f (Negro), #ffffff (Blanco)
   ========================================================================== */

:root {
    --bb-red: #de0000;
    --bb-red-dark: #b80000;
    --bb-yellow: #fef102;
    --bb-yellow-hover: #e6d900;
    --bb-black: #0c0d0f;
    --bb-black-card: #15181c;
    --bb-dark-gray: #1f2329;
    --bb-border: #282d36;
    --bb-border-hover: #3e4450;
    --bb-text-light: #f3f4f6;
    --bb-text-muted: #9ca3af;
    --bb-text-dark: #111827;
    --bb-white: #ffffff;
    --bb-radius: 12px;
    --bb-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

body, html {
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif !important;
    background-color: var(--bb-black) !important;
    color: var(--bb-text-light) !important;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
}

* {
    box-sizing: border-box;
}

.bb-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ==========================================================================
   Topbar & Header Global
   ========================================================================== */
.bb-topbar {
    background: #090a0c;
    border-bottom: 1px solid var(--bb-border);
    padding: 9px 0;
    font-size: 13px;
}
.bb-topbar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}
.bb-topbar-badges {
    display: flex;
    align-items: center;
    gap: 20px;
    color: var(--bb-text-muted);
}
.bb-topbar-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.bb-topbar-badge svg {
    color: var(--bb-yellow);
    flex-shrink: 0;
}
.bb-topbar-badge strong {
    color: var(--bb-white);
}
.bb-topbar-branches {
    display: flex;
    align-items: center;
    gap: 24px;
}
.bb-topbar-branch {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--bb-text-muted);
    text-decoration: none;
    transition: var(--bb-transition);
}
.bb-topbar-branch svg {
    color: var(--bb-red);
    flex-shrink: 0;
}
.bb-topbar-branch:hover {
    color: var(--bb-yellow);
}

.bb-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(12, 13, 15, 0.96);
    backdrop-filter: blur(14px);
    border-bottom: 2px solid var(--bb-red);
}
.bb-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    gap: 24px;
}
.bb-logo-wrap {
    display: flex;
    align-items: center;
    text-decoration: none;
}
.bb-logo-wrap img {
    height: 48px;
    width: auto;
    display: block;
}
.bb-nav {
    display: flex;
    align-items: center;
    gap: 28px;
}
.bb-nav a {
    color: var(--bb-text-light);
    text-decoration: none;
    font-weight: 500;
    font-size: 15px;
    transition: var(--bb-transition);
    position: relative;
}
.bb-nav a:hover, .bb-nav a.active {
    color: var(--bb-yellow);
}
.bb-nav a.active::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--bb-yellow);
}
.bb-header-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}
.bb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 24px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    cursor: pointer;
    transition: var(--bb-transition);
    border: none;
}
.bb-btn-primary {
    background-color: var(--bb-yellow);
    color: var(--bb-black) !important;
    box-shadow: 0 4px 14px rgba(254, 241, 2, 0.25);
}
.bb-btn-primary:hover {
    background-color: var(--bb-yellow-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(254, 241, 2, 0.4);
    color: var(--bb-black) !important;
}
.bb-btn-red {
    background-color: var(--bb-red);
    color: var(--bb-white) !important;
    box-shadow: 0 4px 14px rgba(222, 0, 0, 0.35);
}
.bb-btn-red:hover {
    background-color: var(--bb-red-dark);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(222, 0, 0, 0.5);
    color: var(--bb-white) !important;
}
.bb-btn-outline {
    background: transparent;
    color: var(--bb-white) !important;
    border: 1px solid var(--bb-border);
}
.bb-btn-outline:hover {
    border-color: var(--bb-yellow);
    color: var(--bb-yellow) !important;
}
.bb-cart-btn {
    position: relative;
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    width: 44px;
    height: 44px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--bb-white);
    text-decoration: none;
    transition: var(--bb-transition);
}
.bb-cart-btn:hover {
    border-color: var(--bb-yellow);
    color: var(--bb-yellow);
}
.bb-cart-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    background: var(--bb-red);
    color: white;
    font-size: 11px;
    font-weight: 700;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ==========================================================================
   Hero Section
   ========================================================================== */
.bb-hero {
    position: relative;
    padding: 85px 0 75px;
    background: radial-gradient(circle at 75% 30%, rgba(222, 0, 0, 0.18) 0%, transparent 55%),
                radial-gradient(circle at 15% 75%, rgba(254, 241, 2, 0.08) 0%, transparent 45%),
                var(--bb-black);
    overflow: hidden;
    border-bottom: 1px solid var(--bb-border);
}
.bb-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--bb-yellow), transparent);
}
.bb-hero-grid {
    display: grid !important;
    grid-template-columns: 1.15fr 0.85fr !important;
    align-items: center !important;
    gap: 48px !important;
}
.bb-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: rgba(222, 0, 0, 0.12);
    border: 1px solid var(--bb-red);
    padding: 7px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    color: #ff6b6b;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 22px;
}
.bb-hero-badge svg {
    color: var(--bb-yellow);
}
.bb-hero h1 {
    font-size: clamp(34px, 4.4vw, 56px) !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: -1px !important;
    color: var(--bb-white) !important;
    margin: 0 0 20px !important;
    text-transform: uppercase !important;
}
.bb-hero h1 mark {
    background: transparent !important;
    color: var(--bb-yellow) !important;
    padding: 0 !important;
}
.bb-hero-desc {
    font-size: 17px;
    color: var(--bb-text-muted);
    line-height: 1.65;
    margin: 0 0 34px;
    max-width: 580px;
}
.bb-hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 40px;
}
.bb-hero-stats {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
    padding-top: 28px !important;
    border-top: 1px solid var(--bb-border) !important;
}
.bb-stat-item h4 {
    font-size: 28px !important;
    font-weight: 900 !important;
    color: var(--bb-yellow) !important;
    margin: 0 !important;
    line-height: 1 !important;
}
.bb-stat-item p {
    font-size: 12px !important;
    color: var(--bb-text-muted) !important;
    margin: 6px 0 0 !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
}

/* Hero Right Showcase */
.bb-hero-showcase {
    position: relative;
    background: linear-gradient(145deg, #181b20 0%, #101215 100%);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    padding: 36px 30px;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.7);
    text-align: center;
}
.bb-hero-showcase::after {
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: var(--bb-radius);
    padding: 1px;
    background: linear-gradient(135deg, var(--bb-red), transparent 50%, var(--bb-yellow));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}
.bb-hero-product-img {
    max-width: 100%;
    height: auto;
    max-height: 290px;
    object-fit: contain;
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.9));
    transition: var(--bb-transition);
}
.bb-hero-showcase:hover .bb-hero-product-img {
    transform: scale(1.04);
}
.bb-showcase-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--bb-red);
    color: white;
    font-size: 12px;
    font-weight: 800;
    padding: 6px 14px;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 18px;
}
.bb-showcase-pills {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 22px;
    flex-wrap: wrap;
}
.bb-showcase-pill {
    background: var(--bb-dark-gray);
    border: 1px solid var(--bb-border);
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    color: var(--bb-white);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.bb-showcase-pill svg {
    color: var(--bb-yellow);
}

/* ==========================================================================
   Section Headers & Components
   ========================================================================== */
.bb-section {
    padding: 85px 0;
    position: relative;
}
.bb-section-header {
    text-align: center;
    max-width: 680px;
    margin: 0 auto 50px;
}
.bb-section-tag {
    display: inline-block;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--bb-red);
    background: rgba(222, 0, 0, 0.1);
    padding: 5px 14px;
    border-radius: 999px;
    margin-bottom: 14px;
}
.bb-section-title {
    font-size: clamp(28px, 3.2vw, 42px) !important;
    font-weight: 900 !important;
    color: var(--bb-white) !important;
    margin: 0 0 14px !important;
    text-transform: uppercase !important;
    letter-spacing: -0.5px !important;
}
.bb-section-title mark {
    background: transparent !important;
    color: var(--bb-yellow) !important;
    padding: 0 !important;
}
.bb-section-desc {
    font-size: 16px;
    color: var(--bb-text-muted);
    margin: 0;
    line-height: 1.6;
}

/* ==========================================================================
   8 Core Categories Grid
   ========================================================================== */
.bb-categories-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 22px !important;
}
.bb-category-card {
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    transition: var(--bb-transition);
    position: relative;
}
.bb-category-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: transparent;
    transition: var(--bb-transition);
    z-index: 3;
}
.bb-category-card:hover {
    transform: translateY(-6px);
    border-color: var(--bb-red);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.7);
}
.bb-category-card:hover::before {
    background: linear-gradient(90deg, var(--bb-red), var(--bb-yellow));
}
.bb-cat-thumb-wrap {
    width: 100%;
    height: 140px;
    background: linear-gradient(180deg, #1a1e24 0%, #121418 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--bb-border);
}
.bb-cat-thumb-wrap img {
    max-width: 80%;
    max-height: 80%;
    object-fit: contain;
    transition: var(--bb-transition);
}
.bb-category-card:hover .bb-cat-thumb-wrap img {
    transform: scale(1.08);
}
.bb-cat-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.bb-cat-title {
    font-size: 17px;
    font-weight: 800;
    color: var(--bb-white);
    margin: 0 0 8px;
    text-transform: uppercase;
}
.bb-cat-desc {
    font-size: 13px;
    color: var(--bb-text-muted);
    margin: 0 0 18px;
    line-height: 1.45;
}
.bb-cat-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    color: var(--bb-yellow);
    text-transform: uppercase;
    margin-top: auto;
    transition: var(--bb-transition);
}
.bb-category-card:hover .bb-cat-cta {
    color: var(--bb-white);
    transform: translateX(4px);
}

/* ==========================================================================
   Products Grid
   ========================================================================== */
.bb-products-section {
    background: #0f1114;
    border-top: 1px solid var(--bb-border);
    border-bottom: 1px solid var(--bb-border);
}
.bb-products-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 22px !important;
}
.bb-product-card {
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    padding: 20px;
    display: flex;
    flex-direction: column;
    transition: var(--bb-transition);
    position: relative;
}
.bb-product-card:hover {
    transform: translateY(-5px);
    border-color: var(--bb-yellow);
    box-shadow: 0 12px 28px rgba(0,0,0,0.5);
}
.bb-prod-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: var(--bb-red);
    color: white;
    font-size: 11px;
    font-weight: 800;
    padding: 4px 8px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 2;
}
.bb-prod-img-wrap {
    width: 100%;
    height: 190px;
    background: var(--bb-dark-gray);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    overflow: hidden;
    padding: 12px;
}
.bb-prod-img-wrap img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: var(--bb-transition);
}
.bb-product-card:hover .bb-prod-img-wrap img {
    transform: scale(1.06);
}
.bb-prod-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--bb-white);
    margin: 0 0 8px;
    line-height: 1.35;
}
.bb-prod-title a {
    color: inherit;
    text-decoration: none;
    transition: var(--bb-transition);
}
.bb-prod-title a:hover {
    color: var(--bb-yellow);
}
.bb-prod-price {
    font-size: 20px;
    font-weight: 900;
    color: var(--bb-yellow);
    margin: 0 0 16px;
}
.bb-prod-actions {
    margin-top: auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
}

/* ==========================================================================
   Banner Graff
   ========================================================================== */
.bb-graff-banner {
    background: linear-gradient(135deg, #1c0505 0%, #0d0d0f 60%, #151402 100%);
    border: 2px solid var(--bb-red);
    border-radius: var(--bb-radius);
    padding: 50px;
    position: relative;
    overflow: hidden;
    margin: 40px 0;
}
.bb-graff-grid {
    display: grid !important;
    grid-template-columns: 1.2fr 0.8fr !important;
    align-items: center !important;
    gap: 40px !important;
}
.bb-graff-content h3 {
    font-size: clamp(26px, 3vw, 40px) !important;
    font-weight: 900 !important;
    color: var(--bb-white) !important;
    margin: 0 0 16px !important;
    text-transform: uppercase !important;
}
.bb-graff-content h3 span {
    color: var(--bb-yellow);
}
.bb-graff-content p {
    color: var(--bb-text-muted);
    font-size: 15px;
    margin: 0 0 26px;
    line-height: 1.6;
}
.bb-graff-features {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
    margin-bottom: 30px !important;
}
.bb-graff-feature {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 13px;
    font-weight: 600;
    color: var(--bb-text-light);
}
.bb-graff-feature svg {
    color: var(--bb-yellow);
    flex-shrink: 0;
}

/* ==========================================================================
   Services Grid
   ========================================================================== */
.bb-services-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 22px !important;
}
.bb-service-card {
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    padding: 32px 24px;
    text-align: center;
    transition: var(--bb-transition);
}
.bb-service-card:hover {
    transform: translateY(-5px);
    border-color: var(--bb-yellow);
    box-shadow: 0 12px 28px rgba(0,0,0,0.6);
}
.bb-service-icon-box {
    width: 64px;
    height: 64px;
    margin: 0 auto 20px;
    background: rgba(254, 241, 2, 0.08);
    border: 1px solid rgba(254, 241, 2, 0.25);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--bb-yellow);
    transition: var(--bb-transition);
}
.bb-service-card:hover .bb-service-icon-box {
    background: var(--bb-yellow);
    color: var(--bb-black);
    transform: scale(1.08);
}
.bb-service-card h4 {
    font-size: 17px;
    font-weight: 800;
    color: var(--bb-white);
    margin: 0 0 10px;
    text-transform: uppercase;
}
.bb-service-card p {
    font-size: 13px;
    color: var(--bb-text-muted);
    margin: 0;
    line-height: 1.55;
}

/* ==========================================================================
   Branches Section
   ========================================================================== */
.bb-branches-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
}
.bb-branch-card {
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    padding: 34px;
    position: relative;
}
.bb-branch-card.active-branch {
    border-color: var(--bb-red);
}
.bb-branch-badge {
    display: inline-block;
    background: var(--bb-red);
    color: white;
    font-size: 11px;
    font-weight: 800;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 16px;
}
.bb-branch-title {
    font-size: 24px;
    font-weight: 800;
    color: var(--bb-white);
    margin: 0 0 20px;
}
.bb-branch-info {
    list-style: none;
    padding: 0;
    margin: 0 0 26px;
}
.bb-branch-info li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: var(--bb-text-muted);
    font-size: 14px;
    margin-bottom: 12px;
    line-height: 1.45;
}
.bb-branch-info li svg {
    color: var(--bb-yellow);
    margin-top: 3px;
    flex-shrink: 0;
}
.bb-branch-info li strong {
    color: var(--bb-text-light);
}
.bb-branch-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

/* ==========================================================================
   Footer
   ========================================================================== */
.bb-footer {
    background: #08090a;
    border-top: 2px solid var(--bb-border);
    padding: 64px 0 28px;
    margin-top: 60px;
}
.bb-footer-grid {
    display: grid !important;
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr !important;
    gap: 40px !important;
    margin-bottom: 48px !important;
}
.bb-footer-col h5 {
    font-size: 15px;
    font-weight: 800;
    color: var(--bb-white);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 18px;
    position: relative;
}
.bb-footer-col h5::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 32px;
    height: 2px;
    background: var(--bb-yellow);
}
.bb-footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}
.bb-footer-links li {
    margin-bottom: 10px;
}
.bb-footer-links a {
    color: var(--bb-text-muted);
    text-decoration: none;
    font-size: 14px;
    transition: var(--bb-transition);
}
.bb-footer-links a:hover {
    color: var(--bb-yellow);
    padding-left: 4px;
}
.bb-footer-bottom {
    padding-top: 26px;
    border-top: 1px solid var(--bb-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 13px;
    color: var(--bb-text-muted);
    flex-wrap: wrap;
    gap: 16px;
}

.bb-sevenux-credit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #8c939d;
    text-decoration: none;
    transition: var(--bb-transition);
}
.bb-sevenux-credit a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: inherit;
    text-decoration: none;
    transition: var(--bb-transition);
}
.bb-sevenux-credit strong {
    color: #ffffff;
    font-weight: 800;
    letter-spacing: 0.5px;
}
.bb-sevenux-icon {
    width: 17px;
    height: 17px;
    display: block;
    border-radius: 2px;
    object-fit: contain;
}
.bb-sevenux-credit a:hover strong {
    color: var(--bb-yellow);
}

/* ==========================================================================
   Floating WhatsApp Widget
   ========================================================================== */
.bb-floating-wa {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
}
.bb-wa-trigger {
    background: #25D366;
    color: white;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 24px rgba(37, 211, 102, 0.4);
    cursor: pointer;
    transition: var(--bb-transition);
    border: none;
    outline: none;
}
.bb-wa-trigger:hover {
    transform: scale(1.08);
    box-shadow: 0 12px 30px rgba(37, 211, 102, 0.6);
}
.bb-wa-popup {
    position: absolute;
    bottom: 72px;
    right: 0;
    width: 320px;
    background: var(--bb-black-card);
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.8);
    padding: 18px;
    display: none;
    animation: fadeIn 0.2s ease-out;
}
.bb-wa-popup.active {
    display: block;
}
.bb-wa-popup-header {
    border-bottom: 1px solid var(--bb-border);
    padding-bottom: 12px;
    margin-bottom: 14px;
}
.bb-wa-popup-header h6 {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    color: var(--bb-white);
}
.bb-wa-popup-header p {
    margin: 4px 0 0;
    font-size: 12px;
    color: var(--bb-text-muted);
}
.bb-wa-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px;
    background: var(--bb-dark-gray);
    border: 1px solid var(--bb-border);
    border-radius: 8px;
    margin-bottom: 8px;
    text-decoration: none;
    color: var(--bb-white);
    transition: var(--bb-transition);
}
.bb-wa-option:hover {
    border-color: #25D366;
    background: rgba(37, 211, 102, 0.1);
}
.bb-wa-option strong {
    font-size: 13px;
    display: block;
}
.bb-wa-option span {
    font-size: 11px;
    color: var(--bb-text-muted);
}

/* ==========================================================================
   WooCommerce Single Product Page Styling
   ========================================================================== */
.single-product .site-main, 
.single-product .content-area {
    background-color: var(--bb-black) !important;
    padding: 40px 0;
}

.woocommerce div.product {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 24px;
}

.woocommerce div.product .product_title {
    font-size: 32px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    color: var(--bb-white) !important;
    margin-bottom: 12px !important;
}

.woocommerce div.product p.price, 
.woocommerce div.product span.price {
    font-size: 28px !important;
    font-weight: 900 !important;
    color: var(--bb-yellow) !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    color: var(--bb-text-muted) !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    margin: 20px 0 !important;
}

.woocommerce div.product form.cart {
    margin: 28px 0 !important;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.woocommerce div.product form.cart .button {
    background-color: var(--bb-yellow) !important;
    color: var(--bb-black) !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 28px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    transition: var(--bb-transition) !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(254, 241, 2, 0.25) !important;
}

.woocommerce div.product form.cart .button:hover {
    background-color: var(--bb-yellow-hover) !important;
    transform: translateY(-2px) !important;
}

.bb-single-wa-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #25D366;
    color: white !important;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 14px;
    padding: 14px 24px;
    border-radius: 8px;
    text-decoration: none;
    transition: var(--bb-transition);
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.35);
}
.bb-single-wa-action:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.5);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    background: transparent !important;
    border-bottom: 2px solid var(--bb-border) !important;
    padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 20px 0 0 !important;
    padding: 10px 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--bb-text-muted) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--bb-yellow) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    background: var(--bb-black-card) !important;
    border: 1px solid var(--bb-border) !important;
    border-radius: var(--bb-radius) !important;
    padding: 30px !important;
    color: var(--bb-text-muted) !important;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
    color: var(--bb-white) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    margin-top: 0 !important;
}

.woocommerce div.product .product_meta {
    border-top: 1px solid var(--bb-border) !important;
    padding-top: 18px !important;
    font-size: 13px !important;
    color: var(--bb-text-muted) !important;
}

.woocommerce div.product .product_meta a {
    color: var(--bb-yellow) !important;
}

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */
@media (max-width: 1024px) {
    .bb-hero-grid { grid-template-columns: 1fr !important; }
    .bb-categories-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .bb-products-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .bb-services-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .bb-graff-grid { grid-template-columns: 1fr !important; }
    .bb-footer-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 768px) {
    .bb-nav { display: none; }
    .bb-topbar-inner { justify-content: center; text-align: center; }
    .bb-topbar-branches { display: none; }
    .bb-hero h1 { font-size: 32px !important; }
    .bb-hero-stats { grid-template-columns: repeat(2, 1fr) !important; }
    .bb-categories-grid { grid-template-columns: 1fr !important; }
    .bb-products-grid { grid-template-columns: 1fr !important; }
    .bb-services-grid { grid-template-columns: 1fr !important; }
    .bb-branches-grid { grid-template-columns: 1fr !important; }
    .bb-footer-grid { grid-template-columns: 1fr !important; }
}

/* ==========================================================================
   Tienda & Catálogo WooCommerce - Cards de Productos de Alto Contraste
   ========================================================================== */
.woocommerce ul.products,
.elementor-products-grid ul.products,
.elementor-wc-products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 22px !important;
    margin: 20px 0 40px !important;
    padding: 0 !important;
    list-style: none !important;
}
@media (max-width: 1024px) {
    .woocommerce ul.products,
    .elementor-products-grid ul.products,
    .elementor-wc-products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 640px) {
    .woocommerce ul.products,
    .elementor-products-grid ul.products,
    .elementor-wc-products ul.products {
        grid-template-columns: 1fr !important;
    }
}

.woocommerce ul.products li.product,
.elementor-products-grid ul.products li.product,
.elementor-wc-products ul.products li.product {
    background: #14171d !important;
    border: 1px solid #252b36 !important;
    border-radius: var(--bb-radius) !important;
    padding: 22px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    transition: var(--bb-transition) !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
    box-sizing: border-box !important;
    position: relative !important;
}
.woocommerce ul.products li.product:hover,
.elementor-products-grid ul.products li.product:hover,
.elementor-wc-products ul.products li.product:hover {
    border-color: var(--bb-yellow) !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.7) !important;
}

/* Image container */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.elementor-products-grid ul.products li.product a.woocommerce-LoopProduct-link,
.elementor-wc-products ul.products li.product a.woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-decoration: none !important;
    margin-bottom: 14px !important;
}
.woocommerce ul.products li.product img,
.elementor-products-grid ul.products li.product img,
.elementor-wc-products ul.products li.product img {
    height: 180px !important;
    width: 100% !important;
    max-width: 220px !important;
    object-fit: contain !important;
    margin: 0 auto 16px !important;
    transition: transform 0.25s ease !important;
    filter: drop-shadow(0 8px 16px rgba(0,0,0,0.5));
}
.woocommerce ul.products li.product:hover img,
.elementor-products-grid ul.products li.product:hover img {
    transform: scale(1.06) !important;
}

/* Titulo del producto - BLANCO PURO Y ALTO CONTRASTE */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.elementor-products-grid ul.products li.product .woocommerce-loop-product__title,
.elementor-wc-products ul.products li.product .woocommerce-loop-product__title,
.woocommerce-loop-product__title {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    margin: 0 0 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    min-height: 42px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    transition: color 0.2s ease !important;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.elementor-products-grid ul.products li.product:hover .woocommerce-loop-product__title {
    color: var(--bb-yellow) !important;
}

/* Precio en Tienda */
.woocommerce ul.products li.product .price,
.elementor-products-grid ul.products li.product .price,
.elementor-wc-products ul.products li.product .price {
    color: var(--bb-yellow) !important;
    font-size: 24px !important;
    font-weight: 900 !important;
    text-align: center !important;
    margin: 0 0 16px !important;
    line-height: 1.2 !important;
}
.woocommerce ul.products li.product .price del,
.elementor-products-grid ul.products li.product .price del {
    color: #71717a !important;
    font-size: 15px !important;
    font-weight: normal !important;
    margin-right: 8px !important;
}
.woocommerce ul.products li.product .price ins,
.elementor-products-grid ul.products li.product .price ins {
    text-decoration: none !important;
    color: var(--bb-yellow) !important;
}

/* Boton Agregar al carrito */
.woocommerce ul.products li.product .button.add_to_cart_button,
.elementor-products-grid ul.products li.product .button.add_to_cart_button,
.elementor-wc-products ul.products li.product .button.add_to_cart_button {
    background: var(--bb-yellow) !important;
    color: #0c0d0f !important;
    font-weight: 800 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 12px 18px !important;
    border-radius: 8px !important;
    text-align: center !important;
    border: none !important;
    transition: all 0.2s ease !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}
.woocommerce ul.products li.product .button.add_to_cart_button:hover,
.elementor-products-grid ul.products li.product .button.add_to_cart_button:hover {
    background: #ffffff !important;
    color: #0c0d0f !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(254, 241, 2, 0.4) !important;
}
.woocommerce ul.products li.product .button.add_to_cart_button.loading {
    opacity: 0.75 !important;
}
.woocommerce ul.products li.product .button.add_to_cart_button.added {
    background: #16a34a !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Sidebar de Categorias y Filtros Lateral
   ========================================================================== */
.elementor-widget-heading .elementor-heading-title {
    color: #ffffff !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-size: 18px !important;
    margin-bottom: 12px !important;
}

/* Contenedores de Acordeón de Categorías y Marcas */
details.e-n-accordion-item {
    background: #14171d !important;
    border: 1px solid #262c36 !important;
    border-radius: 10px !important;
    margin-bottom: 14px !important;
    overflow: hidden !important;
    transition: border-color 0.2s ease !important;
}
details.e-n-accordion-item:hover {
    border-color: #3e4655 !important;
}
summary.e-n-accordion-item-title {
    background: #191d24 !important;
    color: #ffffff !important;
    padding: 13px 16px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    border-bottom: 1px solid #262c36 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}
summary.e-n-accordion-item-title svg {
    fill: var(--bb-yellow) !important;
}
.e-n-accordion-item-title-text {
    color: #ffffff !important;
    font-weight: 700 !important;
}

/* Listas internas del plugin de categorías / marcas */
.wpb_category_n_menu_accordion,
.wpb-wamc-elementor-widget {
    background: transparent !important;
    border: none !important;
    padding: 10px 12px !important;
}
ul.wpb_category_n_menu_accordion_list,
.elementor-widget-text-editor ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
ul.wpb_category_n_menu_accordion_list li,
.elementor-widget-text-editor ul li {
    margin: 3px 0 !important;
    padding: 0 !important;
}
ul.wpb_category_n_menu_accordion_list li a,
.elementor-widget-text-editor a,
.cat-item a {
    display: block !important;
    color: #e2e8f0 !important; /* Blanco suave nítido */
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}
ul.wpb_category_n_menu_accordion_list li a:hover,
.elementor-widget-text-editor a:hover,
.cat-item a:hover {
    background: rgba(254, 241, 2, 0.12) !important;
    color: var(--bb-yellow) !important;
    transform: translateX(4px) !important;
}
/* Categoría activa */
ul.wpb_category_n_menu_accordion_list li.current-cat a,
ul.wpb_category_n_menu_accordion_list li.current-cat > a {
    background: rgba(222, 0, 0, 0.18) !important;
    color: var(--bb-yellow) !important;
    border-left: 3px solid var(--bb-red) !important;
    font-weight: 800 !important;
}

/* Barra de Buscador Advanced Woo Search (AWS) */
.aws-container {
    margin-bottom: 24px !important;
}
.aws-container .aws-search-field {
    background: #14171d !important;
    border: 1px solid #2b323e !important;
    border-radius: 8px 0 0 8px !important;
    color: #ffffff !important;
    padding: 11px 16px !important;
    font-size: 14px !important;
}
.aws-container .aws-search-field::placeholder {
    color: #94a3b8 !important;
}
.aws-container .aws-search-field:focus {
    border-color: var(--bb-red) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(222, 0, 0, 0.25) !important;
}
.aws-container .aws-search-form .aws-search-btn {
    background: var(--bb-red) !important;
    border: 1px solid var(--bb-red) !important;
    border-radius: 0 8px 8px 0 !important;
    color: #ffffff !important;
    cursor: pointer !important;
    transition: background 0.2s ease !important;
}
.aws-container .aws-search-form .aws-search-btn:hover {
    background: var(--bb-red-dark) !important;
}

/* Textos de paginación y ordenamiento */
p.woocommerce-result-count {
    color: #94a3b8 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}
.woocommerce-ordering select.orderby {
    background: #14171d !important;
    color: #ffffff !important;
    border: 1px solid #2b323e !important;
    border-radius: 8px !important;
    padding: 9px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
}
.woocommerce-ordering select.orderby option {
    background: #14171d !important;
    color: #ffffff !important;
}

/* Paginador WooCommerce */
.woocommerce nav.woocommerce-pagination ul {
    border: none !important;
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 40px 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li {
    border: none !important;
    background: transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #14171d !important;
    border: 1px solid #2b323e !important;
    color: #ffffff !important;
    padding: 9px 16px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    transition: all 0.2s ease !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--bb-red) !important;
    border-color: var(--bb-red) !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Página de Contacto y Alto Contraste Global de Textos
   ========================================================================== */
.bb-contact-page {
    padding: 60px 0 100px;
}
.bb-contact-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 36px !important;
    margin-top: 40px !important;
}
@media (max-width: 900px) {
    .bb-contact-grid {
        grid-template-columns: 1fr !important;
    }
}
.bb-contact-card {
    background: #14171d;
    border: 1px solid #262c36;
    border-radius: var(--bb-radius);
    padding: 32px;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    transition: var(--bb-transition);
}
.bb-contact-card:hover {
    border-color: var(--bb-red);
    box-shadow: 0 20px 45px rgba(0,0,0,0.7);
}
.bb-contact-card.is-central {
    border-top: 3px solid var(--bb-yellow);
}
.bb-contact-card iframe {
    width: 100% !important;
    height: 250px !important;
    border: 1px solid #262c36 !important;
    border-radius: 10px !important;
    margin-bottom: 24px !important;
}
.bb-contact-card h2,
.bb-contact-card h3 {
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 900 !important;
    margin: 0 0 16px !important;
    text-transform: uppercase !important;
    letter-spacing: -0.3px !important;
}
.bb-contact-list {
    list-style: none !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
}
.bb-contact-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    color: #ffffff !important; /* Alto contraste blanco */
    font-size: 15px !important;
    line-height: 1.5 !important;
    margin-bottom: 16px !important;
}
.bb-contact-list li svg {
    color: var(--bb-yellow) !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}
.bb-contact-list li strong {
    color: #fef102 !important;
    display: block !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 2px !important;
}
.bb-contact-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: auto;
}

/* Regla general de alto contraste para cualquier texto en contenedores oscuros */
.page-content p,
.page-content li,
.entry-content p,
.entry-content li,
.elementor-widget-text-editor p,
.elementor-widget-text-editor li {
    color: #e2e8f0 !important;
}
.page-content h1, .page-content h2, .page-content h3, .page-content h4,
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
    color: #ffffff !important;
}

/* Pulso del carrito al agregar producto */
@keyframes bbCartPulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.4); }
    100% { transform: scale(1); }
}
.bb-cart-badge.bb-pulse {
    animation: bbCartPulse 0.4s ease-in-out !important;
}

/* ==========================================================================
   Header y Navegación Mobile: Hamburguesa, Ticker y Proporciones
   ========================================================================== */
.bb-desktop-only { display: flex !important; }
.bb-mobile-only,
.bb-mobile-drawer,
.bb-drawer-overlay,
.bb-mobile-toggle,
.bb-mobile-cta,
.bb-mobile-ticker { display: none !important; }
.bb-header-left { display: flex; align-items: center; gap: 16px; }

@media (max-width: 768px) {
   .bb-desktop-only { display: none !important; }
   .bb-mobile-only { display: flex !important; }

   /* Topbar carrusel rotativo de 1 sola línea */
   .bb-topbar {
       padding: 7px 0 !important;
       background: #090a0c !important;
   }
   .bb-mobile-ticker {
       width: 100% !important;
       display: flex !important;
       justify-content: center !important;
       align-items: center !important;
       height: 24px !important;
       overflow: hidden !important;
       position: relative !important;
   }
   .bb-ticker-track {
       width: 100% !important;
       text-align: center !important;
   }
   .bb-ticker-item {
       display: none !important;
       font-size: 11.5px !important;
       color: #e2e8f0 !important;
       letter-spacing: 0.2px !important;
       white-space: nowrap !important;
       overflow: hidden !important;
       text-overflow: ellipsis !important;
   }
   .bb-ticker-item.active {
       display: block !important;
       animation: bbFadeTicker 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
   }
   @keyframes bbFadeTicker {
       from { opacity: 0; transform: translateY(6px); }
       to { opacity: 1; transform: translateY(0); }
   }

   /* Header y Logo en Mobile con proporciones balanceadas */
   .bb-header {
       padding: 0 !important;
   }
   .bb-header-inner {
       padding: 10px 16px !important;
       display: flex !important;
       align-items: center !important;
       justify-content: space-between !important;
       gap: 10px !important;
   }
   .bb-header-left {
       display: flex !important;
       align-items: center !important;
       gap: 12px !important;
       flex: 1 !important;
       min-width: 0 !important;
   }
   .bb-logo-wrap {
       display: flex !important;
       align-items: center !important;
   }
   .bb-logo-wrap img {
       height: 38px !important;
       max-height: 40px !important;
       width: auto !important;
       max-width: 160px !important;
       object-fit: contain !important;
   }

   /* Botón Hamburguesa */
   .bb-mobile-toggle {
       background: #14171d !important;
       border: 1px solid #2b323e !important;
       border-radius: 8px !important;
       width: 38px !important;
       height: 38px !important;
       display: flex !important;
       flex-direction: column !important;
       justify-content: center !important;
       align-items: center !important;
       gap: 4px !important;
       cursor: pointer !important;
       padding: 0 !important;
       flex-shrink: 0 !important;
   }
   .bb-toggle-bar {
       width: 18px !important;
       height: 2px !important;
       background: #ffffff !important;
       border-radius: 2px !important;
   }

   /* Acciones del header en Mobile */
   .bb-header-actions {
       display: flex !important;
       align-items: center !important;
       gap: 8px !important;
       flex-shrink: 0 !important;
   }
   .bb-mobile-cta {
       background: var(--bb-yellow) !important;
       color: #0c0d0f !important;
       font-weight: 800 !important;
       font-size: 11.5px !important;
       text-transform: uppercase !important;
       letter-spacing: 0.5px !important;
       padding: 8px 12px !important;
       border-radius: 6px !important;
       display: inline-flex !important;
       align-items: center !important;
       gap: 5px !important;
       text-decoration: none !important;
       transition: transform 0.2s !important;
       box-shadow: 0 2px 8px rgba(254, 241, 2, 0.25) !important;
       white-space: nowrap !important;
   }
   .bb-mobile-cta:hover {
       background: #ffffff !important;
       color: #0c0d0f !important;
   }
   .bb-cart-btn {
       width: 38px !important;
       height: 38px !important;
       border-radius: 8px !important;
       background: #14171d !important;
       border: 1px solid #2b323e !important;
       display: flex !important;
       align-items: center !important;
       justify-content: center !important;
       margin-right: 2px !important;
   }

   /* Drawer lateral mobile */
   .bb-mobile-drawer {
       position: fixed !important;
       top: 0 !important;
       left: 0 !important;
       width: 82% !important;
       max-width: 320px !important;
       height: 100vh !important;
       background: #0d0f13 !important;
       z-index: 99999 !important;
       transform: translateX(-100%) !important;
       transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
       box-shadow: 10px 0 40px rgba(0,0,0,0.85) !important;
       display: flex !important;
       flex-direction: column !important;
       padding: 20px !important;
       border-right: 1px solid #262c36 !important;
       box-sizing: border-box !important;
       overflow-y: auto !important;
   }
   .bb-mobile-drawer.open {
       transform: translateX(0) !important;
   }
   .bb-drawer-header {
       display: flex !important;
       justify-content: space-between !important;
       align-items: center !important;
       padding-bottom: 18px !important;
       border-bottom: 1px solid #262c36 !important;
       margin-bottom: 16px !important;
   }
   .bb-drawer-close {
       background: #1a1e26 !important;
       border: 1px solid #2b323e !important;
       border-radius: 8px !important;
       color: #ffffff !important;
       font-size: 24px !important;
       line-height: 1 !important;
       width: 36px !important;
       height: 36px !important;
       display: flex !important;
       align-items: center !important;
       justify-content: center !important;
       cursor: pointer !important;
   }
   .bb-drawer-nav {
       display: flex !important;
       flex-direction: column !important;
       gap: 4px !important;
       margin-bottom: auto !important;
   }
   .bb-drawer-link {
       display: flex !important;
       align-items: center !important;
       gap: 12px !important;
       color: #e2e8f0 !important;
       font-size: 14px !important;
       font-weight: 700 !important;
       padding: 12px 14px !important;
       border-radius: 8px !important;
       text-decoration: none !important;
       transition: all 0.2s ease !important;
   }
   .bb-drawer-link svg {
       color: var(--bb-yellow) !important;
       flex-shrink: 0 !important;
   }
   .bb-drawer-link:hover,
   .bb-drawer-link.active {
       background: rgba(254, 241, 2, 0.12) !important;
       color: var(--bb-yellow) !important;
   }
   .bb-drawer-footer {
       border-top: 1px solid #262c36 !important;
       padding-top: 18px !important;
       margin-top: 20px !important;
   }
   .bb-drawer-footer-title {
       font-size: 11px !important;
       text-transform: uppercase !important;
       font-weight: 800 !important;
       color: var(--bb-yellow) !important;
       letter-spacing: 0.8px !important;
       display: block !important;
       margin-bottom: 10px !important;
   }
   .bb-drawer-branch-btn {
       display: flex !important;
       align-items: center !important;
       gap: 10px !important;
       background: #15181e !important;
       border: 1px solid #262c36 !important;
       padding: 10px 12px !important;
       border-radius: 8px !important;
       text-decoration: none !important;
       margin-bottom: 8px !important;
       transition: border-color 0.2s !important;
   }
   .bb-drawer-branch-btn:hover {
       border-color: var(--bb-red) !important;
   }
   .bb-drawer-branch-btn svg {
       color: #25d366 !important;
       flex-shrink: 0 !important;
   }
   .bb-drawer-branch-btn div {
       display: flex !important;
       flex-direction: column !important;
   }
   .bb-drawer-branch-btn strong {
       color: #ffffff !important;
       font-size: 12px !important;
       line-height: 1.2 !important;
   }
   .bb-drawer-branch-btn small {
       color: #94a3b8 !important;
       font-size: 11px !important;
   }

   /* Backdrop overlay */
   .bb-drawer-overlay {
       display: block !important;
       position: fixed !important;
       inset: 0 !important;
       background: rgba(0,0,0,0.75) !important;
       backdrop-filter: blur(4px) !important;
       z-index: 99990 !important;
       opacity: 0 !important;
       pointer-events: none !important;
       transition: opacity 0.3s ease !important;
   }
   .bb-drawer-overlay.open {
       opacity: 1 !important;
       pointer-events: auto !important;
   }
}
