/* BUNDU POWER V2 CORE CSS (Bootstrap 5 Compliant) */
/* FORCE FONT-AWESOME TO SWAP (Satisfies Google PageSpeed) */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-solid-900.woff2") format("woff2");
}
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-regular-400.woff2") format("woff2");
}
@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-brands-400.woff2") format("woff2");
}


/* Global Typography & Resets */
body { font-family: "Open Sans", Helvetica, Arial, sans-serif; color: #444; background: #fff; }
h1, h2, h3, h4, h5, h6, .title { font-family: 'Oswald', Impact, sans-serif; color: #333; text-transform: uppercase; }

/* FIX: Prevent Red Links entirely across all active/focus/tap states */
a { text-decoration: none; color: #000; transition: all 0.2s ease-in-out; }
a:hover { color: #666; }
/* Disable the red/blue mobile tap highlight natively */
a, button, .nav-link, .dropdown-item { -webkit-tap-highlight-color: transparent !important; }
a:active, a:focus { color: #333 !important; outline: none !important; }

/* Utilities */
.transition { transition: all 0.3s ease; }
.hover-warning:hover { color: #f9e701 !important; }
.hover-white:hover { color: #fff !important; }
.radius-0 { border-radius: 0 !important; }

/* CRITICAL FIX: Prevent Bootstrap 3 CSS from hiding Bootstrap 5 Collapses */
.collapse.show { display: block !important; }
.collapsing { position: relative; height: 0; overflow: hidden; transition: height 0.35s ease; display: block !important; }

/* det-loc.js Override */
#maintel *, #mainWA * { color: #fff !important; text-decoration: none !important; }
#maintel i, #mainWA i { color: #f9e701 !important; }

/* Header & Navigation V2 */
.top-bar { font-size: 13px; }
.navbar { border-bottom: 3px solid #f9e701; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
.nav-link { font-size: 14px; letter-spacing: 0.5px; color: #333 !important; position: relative; }
.nav-link:hover, .nav-link:active, .nav-link:focus { color: #000 !important; }

/* NUCLEAR ARROW KILLER: Destroy default Bootstrap arrows globally */
.dropdown-toggle::after { content: none !important; display: none !important; border: none !important; margin: 0 !important; }

/* Desktop Hover Multi-Level Dropdowns */
@media (min-width: 992px) {
    .navbar .dropdown:hover > .dropdown-menu { display: block; opacity: 1; margin-top: 0; }
    .dropdown-menu { animation: fadeIn 0.2s ease-in-out; border-top: 3px solid #f9e701 !important; }
    .dropdown-menu .dropend:hover > .dropdown-menu { display: block; position: absolute; left: 100%; top: -3px; margin-top: 0; }
    .mega-menu { width: 100vw; left: 0; right: 0; position: absolute; padding: 20px; }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* NUCLEAR MOBILE MENU SCROLLING */
@media (max-width: 991px) {
    .navbar-collapse { 
        max-height: 65vh !important; /* Extremely strict bounds to force scroll bar */
        overflow-y: auto !important; 
        -webkit-overflow-scrolling: touch !important; /* Force smooth scroll on iOS */
        background: #fff; 
    }
    .navbar-nav { padding-bottom: 30px; }
    .dropdown-menu { 
        position: static !important; 
        transform: none !important; 
        box-shadow: none !important; 
        border: none !important; 
        background-color: transparent !important;
        max-height: none !important;
        padding-left: 15px; 
        margin-top: 0 !important;
    }
    .mega-menu { padding: 0 !important; }
    .mega-menu .col-md-3 { margin-bottom: 20px; }
    .mega-menu h6 { font-size: 16px; margin-top: 10px; }
}

/* Dropdown Item Styling */
.dropdown-item { padding: 10px 20px; font-size: 13px; font-weight: 600; color: #555; }
.dropdown-item:hover { background-color: #f8f9fa; color: #000; padding-left: 25px; transition: padding 0.2s; border-left: 3px solid #f9e701; }
.dropdown-item:active, .dropdown-item:focus { background-color: #f9e701 !important; color: #000 !important; }

/* Footer V2 */
#footer-v2 { font-size: 14px; }
#footer-v2 h4 { font-size: 18px; }

/* Product Page Overrides */
.breadcrumb-wrapper { background: #f8f9fa; border-bottom: 1px solid #eaeaea; }
.breadcrumb-item a { color: #777; font-weight: 600; }
.breadcrumb-item.active { color: #333; font-weight: 700; }

/* Custom Buttons */
.btn-warning { background-color: #f9e701; border-color: #f9e701; color: #000; }
.btn-warning:hover { background-color: #e6d500; border-color: #e6d500; color: #000; }

/* Page Specific Micro-Styles */
.spec-card { border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); margin-bottom: 25px; }
.spec-card .card-header { background-color: #f8f9fa; font-weight: 700; border-bottom: 2px solid #e9ecef; }
.list-group-item { display: flex; justify-content: space-between; align-items: center; padding: 12px 15px; border-color: #f1f1f1; }
.list-group-item strong { width: 50%; color: #333; }
.list-group-item span { width: 50%; text-align: right; color: #555; }

.gallery-thumb { border-radius: 6px; transition: transform 0.2s; cursor: pointer; object-fit: cover; aspect-ratio: 1/1; width: 100%; border: 2px solid transparent; }
.gallery-thumb:hover { transform: scale(1.05); border-color: #333 !important; }

.price-box { background: #fff; border: 1px solid #ddd; border-radius: 8px; }

/* DARK GREY ACCORDION STYLING */
.accordion-item { border-color: #ddd; overflow: hidden; border-radius: 6px !important; margin-bottom: 10px; }
.accordion-button { color: #333; background-color: #f8f9fa; font-weight: 700; border: none; padding: 18px 20px; box-shadow: none !important;}
.accordion-button:not(.collapsed) { color: #fff !important; background-color: #444 !important; box-shadow: none !important; }
.accordion-button:focus { box-shadow: none !important; border-color: transparent !important; outline: none !important; }
.accordion-button::after { filter: grayscale(100%) brightness(0%); transition: transform 0.2s ease-in-out; }
.accordion-button:not(.collapsed)::after { filter: brightness(0) invert(1); }
.accordion-body { background-color: #fff; color: #555; line-height: 1.7; border-top: 1px solid #ddd; }

/* Mobile Sticky Bottom Bar */
.mobile-cta-bar { z-index: 1050; box-shadow: 0 -4px 15px rgba(0,0,0,0.1); }
@media (max-width: 767px) {
    body { padding-bottom: 80px; } 
    .list-group-item { flex-direction: column; align-items: flex-start; }
    .list-group-item strong, .list-group-item span { width: 100%; text-align: left; }
    .list-group-item span { margin-top: 4px; font-size: 1.05rem; color: #000; }
}
@media (max-width: 767px) { .hero-title { min-height: 115px; } }