
/*** Spinner Start ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease-out, visibility 0s linear .5s;
    z-index: 99999;
 }

 #spinner.show {
     transition: opacity .8s ease-out, visibility 0s linear .0s;
     visibility: visible;
     opacity: 1;
 }

 .back-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    transition: 0.5s;
    z-index: 99;
}
/*** Spinner End ***/


/*** Button Start ***/
.btn {
    font-weight: 600;
    transition: .5s;
}

.btn-square {
    width: 32px;
    height: 32px;
}

.btn-sm-square {
    width: 34px;
    height: 34px;
}

.btn-md-square {
    width: 44px;
    height: 44px;
}

.btn-lg-square {
    width: 56px;
    height: 56px;
}

.btn-square,
.btn-sm-square,
.btn-md-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

.btn.border-secondary {
    transition: 0.5s;
}

.btn.border-secondary:hover {
    background: var(--bs-secondary) !important;
    color: var(--bs-white) !important;
}

/*** Topbar Start ***/
.fixed-top {
    transition: 0.5s;
    background: var(--bs-white);
    border: 0;
}

.topbar {
    padding: 20px;
    border-radius: 230px 100px;
}

.topbar .top-info {
    font-size: 15px;
    line-height: 0;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}

.topbar .top-link {
    font-size: 15px;
    line-height: 0;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}

.topbar .top-link a {
    letter-spacing: 1px;
}

.topbar .top-link a small:hover {
    color: var(--bs-secondary) !important;
    transition: 0.5s;
}

.topbar .top-link a small:hover i {
    color: var(--bs-primary) !important;
}
/*** Topbar End ***/

/*** Navbar Start ***/
.navbar .navbar-nav .nav-link {
    padding: 10px 15px;
    font-size: 16px;
    transition: .5s;
}

.navbar {
    height: 100px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active,
.fixed-top.bg-white .navbar .navbar-nav .nav-link:hover,
.fixed-top.bg-white .navbar .navbar-nav .nav-link.active {
    color: var(--bs-primary);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    vertical-align: middle;
    margin-left: 8px;
}

@media (min-width: 1200px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        border: 0;
        transition: .5s;
        opacity: 0;
    }
}

.dropdown .dropdown-menu a:hover {
    background: var(--bs-secondary);
    color: var(--bs-primary);
}

.navbar .nav-item:hover .dropdown-menu {
    transform: rotateX(0deg);
    visibility: visible;
    background: var(--bs-light) !important;
    border-radius: 10px !important;
    transition: .5s;
    opacity: 1;
}

#searchModal .modal-content {
    background: rgba(255, 255, 255, .8);
}
/*** Navbar End ***/

/*** Hero Header ***/
.hero-header {
    background: linear-gradient(rgba(248, 223, 173, 0.1), rgba(248, 223, 173, 0.1)), url(../img/hero-img.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.carousel-item {
    position: relative;
}

.carousel-item a {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 25px;
    background: linear-gradient(rgba(255, 181, 36, 0.7), rgba(255, 181, 36, 0.7));
}

.carousel-control-next,
.carousel-control-prev {
    width: 48px;
    height: 48px;
    border-radius: 48px;
    border: 1px solid var(--bs-white);
    background: var(--bs-primary);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.carousel-control-next {
    margin-right: 20px;
}

.carousel-control-prev {
    margin-left: 20px;
}

.page-header {
    position: relative;
    background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../img/cart-page-header-img.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media (min-width: 992px) {
    .hero-header,
    .page-header {
        margin-top: 152px !important;
    }
}

@media (max-width: 992px) {
    .hero-header,
    .page-header {
        margin-top: 97px !important;
    }
}
/*** Hero Header end ***/


/*** featurs Start ***/
.featurs .featurs-item .featurs-icon {
    position: relative;
    width: 120px;
    height: 120px;
}

.featurs .featurs-item .featurs-icon::after {
    content: "";
    width: 35px;
    height: 35px;
    background: var(--bs-secondary);
    position: absolute;
    bottom: -10px;
    transform: translate(-50%);
    transform: rotate(45deg);
    background: var(--bs-secondary);
    
}
/*** featurs End ***/


/*** service Start ***/
.service .service-item .service-content {
    position: relative;
    width: 250px; 
    height: 130px; 
    top: -50%; 
    left: 50%; 
    transform: translate(-50%, -50%);
}

/*** service End ***/


/*** Products Start ***/
.products .tab-class .nav-item a.active {
    background: var(--bs-secondary) !important;
}

.products .tab-class .nav-item a.active span {
    color: var(--bs-white) !important; 
}

.products .product-categorie .product-name {
    line-height: 40px;
}

.products .product-categorie .product-name a {
    transition: 0.5s;
}

.products .product-categorie .product-name a:hover {
    color: var(--bs-secondary);
}

.products .product-item {
    height: 100%;
    transition: 0.5s;
}
.products .product-item:hover {
    box-shadow: 0 0 55px rgba(0, 0, 0, 0.4);
}

.products .product-item .product-img {
    overflow: hidden;
    transition: 0.5s;
    border-radius: 10px 10px 0 0;
}

.products .product-item .product-img img {
    transition: 0.5s;
}

.products .product-item .product-img img:hover {
    transform: scale(1.3);
}
/*** Products End ***/


/*** Product Ranges Start ***/
.ranges .range-item {
    height: 100%;
    transition: 0.5s;
}

.ranges .range-item:hover {
    box-shadow: 0 0 55px rgba(0, 0, 0, 0.4);
}

.ranges .range-item .range-img {
    overflow: hidden;
    transition: 0.5s;
    border-radius: 10px 10px 0 0;
}

.ranges .range-item .range-img img {
    transition: 0.5s;
}

.ranges .range-item .range-img img:hover {
    transform: scale(1.2);
}

.ranges .owl-stage {
    margin: 50px 0;
    position: relative;
}

.ranges .owl-nav .owl-prev {
    position: absolute;
    top: -8px;
    right: 0;
    color: var(--bs-primary);
    padding: 5px 25px;
    border: 1px solid var(--bs-secondary);
    border-radius: 20px;
    transition: 0.5s;

}

.ranges .owl-nav .owl-prev:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.ranges .owl-nav .owl-next {
    position: absolute;
    top: -8px;
    right: 88px;
    color: var(--bs-primary);
    padding: 5px 25px;
    border: 1px solid var(--bs-secondary);
    border-radius: 20px;
    transition: 0.5s;
}

.ranges .owl-nav .owl-next:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}
/*** Product Ranges End ***/


/*** Banner Section Start ***/
.banner .banner-btn:hover {
    background: var(--bs-primary);
}
/*** Banner Section End ***/


/*** Facts Start ***/
.counter {
    height: 100%;
    text-align: center;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.05);
}

.counter i {
    font-size: 60px;
    margin-bottom: 25px;
}

.counter h4 {
    color: var(--bs-primary);
    letter-spacing: 1px;
    text-transform: uppercase;
}

.counter h1 {
    margin-bottom: 0;
}
/*** Facts End ***/


/*** testimonial Start ***/
.testimonial .owl-nav .owl-prev {
    position: absolute;
    top: -58px;
    right: 0;
    color: var(--bs-primary);
    padding: 5px 25px;
    border: 1px solid var(--bs-secondary);
    border-radius: 20px;
    transition: 0.5s;
}

.testimonial .owl-nav .owl-prev:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.testimonial .owl-nav .owl-next {
    position: absolute;
    top: -58px;
    right: 88px;
    color: var(--bs-primary);
    padding: 5px 25px;
    border: 1px solid var(--bs-secondary);
    border-radius: 20px;
    transition: 0.5s;
}

.testimonial .owl-nav .owl-next:hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}
/*** testimonial End ***/


/*** Single Page Start ***/
.pagination {
    display: inline-block;
}
  
.pagination a {
    color: var(--bs-dark);
    padding: 10px 16px;
    text-decoration: none;
    transition: 0.5s;
    border: 1px solid var(--bs-secondary);
    margin: 0 4px;
}
  
.pagination a.active {
    background-color: var(--bs-primary);
    color: var(--bs-light);
    border: 1px solid var(--bs-secondary);
}
  
.pagination a:hover:not(.active) {background-color: var(--bs-primary)}

.nav.nav-tabs .nav-link.active {
    border-bottom: 2px solid var(--bs-secondary) !important;
}
/*** Single Page End ***/


/*** Footer Start ***/
.footer .footer-item .btn-link {
    line-height: 35px;
    color: rgba(255, 255, 255, .5);
    transition: 0.5s;
}

.footer .footer-item .btn-link:hover {
    color: var(--bs-secondary) !important;
}

.footer .footer-item p.mb-4 {
    line-height: 35px;
}
/*** Footer End ***/

\n\n/* Optional Electrical minimal brand overrides - original template retained */\n:root {\n    --optional-accent: #7E0441;\n    --optional-black: #111111;\n}\n\nbody {\n    color: #222222;\n    background: #ffffff;\n}\n\n/* Keep the site mainly black and white */\n.text-primary { color: var(--optional-black) !important; }\n.bg-primary { background-color: var(--optional-black) !important; }\n.border-primary { border-color: var(--optional-black) !important; }\n.text-dark { color: var(--optional-black) !important; }\n\n/* Optional Electrical accent is reserved for buttons/highlights */\n.text-secondary { color: var(--optional-accent) !important; }\n.bg-secondary { background-color: var(--optional-accent) !important; }\n.border-secondary { border-color: var(--optional-accent) !important; }\n.btn-primary,\n.btn.border-secondary:hover,\n.carousel-item a,\n.carousel-control-next,\n.carousel-control-prev,\n.back-to-top {\n    background: var(--optional-accent) !important;\n    border-color: var(--optional-accent) !important;\n    color: #ffffff !important;\n}\n\n.btn.border-secondary {\n    color: var(--optional-accent) !important;\n}\n.btn.border-secondary:hover,\n.btn.border-secondary:hover i {\n    color: #ffffff !important;\n}\n\n.navbar .navbar-nav .nav-link:hover,\n.navbar .navbar-nav .nav-link.active,\n.fixed-top.bg-white .navbar .navbar-nav .nav-link:hover,\n.fixed-top.bg-white .navbar .navbar-nav .nav-link.active {\n    color: var(--optional-accent) !important;\n}\n\n/* Reduce the washed-out brightness of the original hero image without changing it */\n.hero-header {\n    background: linear-gradient(rgba(0, 0, 0, 0.42), rgba(0, 0, 0, 0.42)), url(../img/hero-img.jpg);\n    background-position: center center;\n    background-repeat: no-repeat;\n    background-size: cover;\n}\n\n/* Keep category tabs neutral; active tab uses the brand accent */\n.products .nav-pills .nav-link,\n.products .nav-pills a {\n    color: #111111 !important;\n}\n.products .nav-pills a.active {\n    background: var(--optional-accent) !important;\n}\n.products .nav-pills a.active span {\n    color: #ffffff !important;\n}\n

/* === Optional Electrical profile-aligned black/white theme === */
:root { --optional-brand:#7E0441; --optional-black:#111111; --optional-white:#ffffff; }
body { background:#ffffff !important; color:#222 !important; }
h1,h2,h3,h4,h5,h6,.text-dark { color:#111111 !important; }
.bg-primary,.bg-secondary { background:#111111 !important; }
.text-primary,.text-secondary { color:#111111 !important; }
.border-primary,.border-secondary { border-color:#111111 !important; }
.navbar,.fixed-top.bg-white { background:#ffffff !important; }
.navbar .navbar-nav .nav-link { color:#111111 !important; }
.navbar .navbar-nav .nav-link:hover,.navbar .navbar-nav .nav-link.active,.dropdown-item:hover,.dropdown-item:focus { color:var(--optional-brand) !important; }
.dropdown-menu { background:#ffffff !important; border-color:#111111 !important; }
.dropdown-item { color:#111111 !important; }
/* company colour reserved for buttons and functional highlights */
.btn,.optional-btn,.back-to-top,.carousel-control-prev,.carousel-control-next { background:var(--optional-brand) !important; border-color:var(--optional-brand) !important; color:#ffffff !important; }
.btn i,.optional-btn i { color:#ffffff !important; }
.btn:hover,.optional-btn:hover { background:#111111 !important; border-color:#111111 !important; color:#ffffff !important; }
.featurs-icon { background:#111111 !important; }
.featurs-icon i { color:#ffffff !important; }
.category-badge { background:#111111 !important; color:#ffffff !important; z-index:2; }
.category-card { position:relative; }
.stretched-link-category { position:absolute; inset:0; z-index:1; }
.category-card h4 a,.category-card .btn { z-index:2; }
.products .nav-pills a { background:#ffffff !important; border:1px solid #111111; }
.products .nav-pills a:hover { background:#111111 !important; }
.products .nav-pills a:hover span { color:#ffffff !important; }
.hero-header { background:linear-gradient(rgba(0,0,0,.52),rgba(0,0,0,.52)),url(../img/hero-img.jpg) !important; background-position:center center !important; background-repeat:no-repeat !important; background-size:cover !important; }
.hero-header h1,.hero-header h4 { color:#ffffff !important; }

/* Optional Electrical profile-aligned refinements */
.site-logo{width:54px;height:54px;object-fit:contain}
.footer-logo{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}
.category-icon{width:88px;height:88px;display:flex;align-items:center;justify-content:center;background:#111;color:#7E0441;border:2px solid #111}
.category-home-card{background:#fff;transition:.25s ease}
.category-home-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.12);border-color:#7E0441!important}
.category-detail-card{background:#fff;scroll-margin-top:150px}
.category-list{columns:2;column-gap:2rem;padding-left:1.2rem}
.category-list li{margin-bottom:.5rem;break-inside:avoid}
@media(max-width:767px){.category-list{columns:1}.navbar-brand h1{font-size:1.35rem!important}}
.hero-header,.page-header{background:linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),url(../img/home-slide-background.jpg)!important;background-size:cover!important;background-position:center!important}
.footer .btn-link,.footer a{color:rgba(255,255,255,.75)}
.footer .btn-link:hover,.footer a:hover{color:#fff}


/* Easy-to-replace image placeholders */
.hero-header {
  background: linear-gradient(rgba(0,0,0,.48), rgba(0,0,0,.48)), url(../img/home-slide-background.jpg) !important;
  background-position:center center !important; background-repeat:no-repeat !important; background-size:cover !important;
}
.page-header {
  background: linear-gradient(rgba(0,0,0,.50), rgba(0,0,0,.50)), url(../img/home-slide-1.jpg) !important;
  background-position:center center !important; background-repeat:no-repeat !important; background-size:cover !important;
}

/* FINAL OPTIONAL ELECTRICAL IMAGE/CATALOGUE ADJUSTMENTS */
.hero-header{background:linear-gradient(rgba(0,0,0,.48),rgba(0,0,0,.48)),url(../img/home-slide-background.jpg)!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;}
.fruite-item .fruite-img img,.range-item .range-img img{transition:.5s;}
.fruite-item:hover .fruite-img img,.range-item:hover .range-img img{transform:scale(1.08);}
.fruite-img{height:220px;background:#f2f2f2}.fruite-img img{height:100%;object-fit:cover}.range-img{height:180px}.range-img img{height:100%;object-fit:cover}
.dropdown-menu.bg-secondary{background:#fff!important;border:1px solid #ddd!important}.dropdown-menu .dropdown-item{color:#111!important}.dropdown-menu .dropdown-item:hover{background:#7E0441!important;color:#fff!important}


/* POLISHED REALISTIC CATEGORY IMAGES */
.page-header{background:linear-gradient(rgba(0,0,0,.50),rgba(0,0,0,.50)),url(../img/home-slide-1.jpg)!important;background-position:center center!important;background-repeat:no-repeat!important;background-size:cover!important;}
.category-home-card{transition:.35s ease;box-shadow:0 8px 24px rgba(0,0,0,.06);}
.category-home-card .range-img{height:220px;background:#f5f5f5;}
.category-home-card .range-img img{height:100%;object-fit:cover;transition:.55s ease;}
.category-home-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.15);border-color:var(--optional-brand)!important;}
.category-home-card:hover .range-img img{transform:scale(1.08);}

/* FINAL REALISTIC IMAGE OVERRIDES */
.hero-header{background:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),url(../img/home-slide-background.jpg)!important;background-position:center center!important;background-repeat:no-repeat!important;background-size:cover!important;}
.page-header{background:linear-gradient(rgba(0,0,0,.50),rgba(0,0,0,.50)),url(../img/home-slide-1.jpg)!important;background-position:center center!important;background-repeat:no-repeat!important;background-size:cover!important;}


/* REAL IMAGES FOR HOME SERVICE CARDS */
.service-card-img{height:240px;background:#f5f5f5;}
.service-card-img img{height:100%;object-fit:cover;transition:.55s ease;}
.service-item:hover .service-card-img img{transform:scale(1.08);}
.service-item{box-shadow:0 8px 24px rgba(0,0,0,.06);transition:.3s ease;}
.service-item:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.14);border-color:var(--optional-brand)!important;}

/* TRADE REFERENCES SLIDING ROW */
.trade-row-item{min-height:170px;display:flex!important;flex-direction:column;justify-content:center;box-shadow:0 8px 22px rgba(0,0,0,.06);}
.trade-logo-icon{width:56px;height:56px;margin:0 auto;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#111;color:#fff;font-size:24px;}
.testimonial-carousel .owl-nav .owl-prev,.testimonial-carousel .owl-nav .owl-next{background:var(--optional-brand)!important;color:#fff!important;}


/* ROBUST NATIVE CATEGORY + TRADE SLIDERS */
.category-slider-shell{position:relative;padding:8px 52px 18px;}
.category-slider-track{display:flex;gap:24px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;scroll-snap-type:x mandatory;padding:12px 0;}
.category-slider-track::-webkit-scrollbar,.auto-slider-track::-webkit-scrollbar{display:none;}
.category-slider-track>.range-item{flex:0 0 300px;scroll-snap-align:start;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.07);}
.category-slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:none;background:var(--optional-brand);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.category-prev{left:0}.category-next{right:0}
.category-slider-btn:hover{background:#111;}
.auto-slider-shell{overflow:hidden;position:relative;width:100%;}
.auto-slider-track{display:flex;gap:22px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;padding:10px 0 18px;}
.trade-company-card{flex:0 0 280px;background:#fff;border:1px solid #ddd;border-radius:12px;overflow:hidden;box-shadow:0 8px 20px rgba(0,0,0,.07);}
.trade-company-img{height:140px;overflow:hidden;background:#f4f4f4;}
.trade-company-img img{width:100%;height:100%;object-fit:cover;transition:.5s;}
.trade-company-card:hover .trade-company-img img{transform:scale(1.08);}
.brand-track{align-items:stretch;}
.brand-logo-card{flex:0 0 220px;min-height:145px;background:#fff;border:1px solid #e5e5e5;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;box-shadow:0 8px 18px rgba(0,0,0,.05);}
.brand-logo-card img{max-width:175px;max-height:80px;object-fit:contain;margin-bottom:12px;}
.brand-logo-card span{font-weight:600;color:#111;text-align:center;}
@media(max-width:576px){.category-slider-shell{padding:8px 38px 18px}.category-slider-track>.range-item{flex-basis:86vw}.trade-company-card{flex-basis:82vw}.brand-logo-card{flex-basis:65vw}.category-slider-btn{width:36px;height:36px;}}


/* ONLY TRADE REFERENCES SLIDE: product categories and product ranges are static grids */
#categorySlider,#businessRangeSlider{display:block!important;overflow:visible!important;scroll-behavior:auto!important;}
.category-slider-btn{display:none!important;}
.ranges .row .range-item{height:100%;}


/* --- Final polish overrides for Optional Electrical --- */
:root{--optional-brand:#7E0441;--optional-black:#111111;--optional-white:#ffffff;}
.text-secondary,.topbar i,.footer .btn-link:hover,.navbar .navbar-nav .nav-link:hover,.navbar .navbar-nav .nav-link.active,.dropdown-item:hover,.dropdown-item:focus{color:var(--optional-brand)!important;}
.bg-secondary,.btn-primary,.back-to-top,.carousel-control-prev,.carousel-control-next,.always-visible-enquiry,.enquiry-pill{background:var(--optional-brand)!important;border-color:var(--optional-brand)!important;color:#fff!important;}
.border-secondary{border-color:var(--optional-brand)!important;}
.btn.border-secondary,.btn-outline-danger:hover,.btn-outline-secondary:hover{background:var(--optional-brand)!important;border-color:var(--optional-brand)!important;color:#fff!important;}
.site-logo{height:74px!important;width:auto!important;max-width:320px!important;object-fit:contain;}
.footer-logo{height:58px!important;width:auto!important;max-width:240px!important;object-fit:contain;}
.navbar-brand{gap:.35rem;}
.hero-header{position:relative;overflow:hidden;background:none!important;}
.hero-header::before{content:'';position:absolute;inset:-14px;background:linear-gradient(rgba(0,0,0,.36),rgba(0,0,0,.36)), url(../img/home-slide-background.jpg) center center/cover no-repeat;filter:blur(8px);transform:scale(1.08);z-index:0;}
.hero-header > .container, .hero-header > .row, .hero-header > *{position:relative;z-index:1;}
.hero-header .carousel .carousel-item img{box-shadow:0 20px 42px rgba(0,0,0,.16);background:#fff;}
.fruite-item .fruite-img img,.range-item .range-img img,.service-img img,.category-home-card .category-home-img img{height:240px;object-fit:contain;background:#fff;padding:16px;}
.range-item .range-img img{height:220px;}
.trade-company-card .trade-company-img img{height:90px;object-fit:contain;background:#fff;padding:12px;}
.trade-company-card.logo-card{min-width:280px;}
.always-visible-enquiry,.fruite-item .btn,.vesitable-item .btn{display:inline-flex!important;align-items:center;justify-content:center;gap:.45rem;color:#fff!important;opacity:1!important;visibility:visible!important;}
.fruite-item .btn i,.vesitable-item .btn i{color:#fff!important;}
.badge.bg-secondary{background:var(--optional-brand)!important;}


/* --- user requested final adjustments --- */
:root{--bs-warning:#7E0441;--bs-yellow:#7E0441;}
.text-warning{color:#7E0441 !important;}
.bg-warning{background-color:#7E0441 !important;}
.border-warning{border-color:#7E0441 !important;}
.featurs-item .featurs-icon{background:#7E0441 !important;}
.featurs-item .featurs-icon i{color:#111111 !important;}
.text-secondary{color:#7E0441 !important;}
.site-logo{height:90px !important; width:440px !important; max-width:58vw !important; object-fit:contain !important; object-position:left center !important; display:block;}
.navbar-brand{min-width:460px; max-width:560px; flex:0 0 auto;}
@media (max-width: 991.98px){.site-logo{width:320px !important;height:72px !important;max-width:70vw !important;}.navbar-brand{min-width:0;max-width:80vw;}}
.hero-header::before{filter:blur(10px) !important;}
.btn, .btn-primary, .btn.border-secondary, .carousel-control-prev, .carousel-control-next, .back-to-top, .text-white.bg-secondary{background:#7E0441 !important; border-color:#7E0441 !important;}
.btn.border-secondary, .fruite-item .btn, .vesitable-item .btn{color:#ffffff !important;}
.fruite-item .btn i, .vesitable-item .btn i{color:#ffffff !important;}


/* --- Latest user fixes --- */
:root{--bs-primary:#111111 !important; --bs-secondary:#7E0441 !important; --bs-warning:#7E0441 !important; --bs-yellow:#7E0441 !important;}
.btn:hover,.btn:focus,.btn:active,.btn-check:focus + .btn,.btn-primary:hover,.btn-primary:focus,.btn-primary:active,
.btn.border-secondary:hover,.btn.border-secondary:focus,.btn.border-secondary:active,
.dropdown .dropdown-menu a:hover,.dropdown .dropdown-menu a:focus,
.carousel-item a:hover,.carousel-item a:focus,
.topbar a:hover,.topbar a:focus,
.back-to-top:hover,.back-to-top:focus{background:#7E0441 !important;border-color:#7E0441 !important;color:#ffffff !important;box-shadow:none !important;}
.form-control:focus{border-color:#7E0441 !important; box-shadow:0 0 0 .15rem rgba(126,4,65,.18) !important;}
.featurs .featurs-item .featurs-icon,.featurs-item .featurs-icon{background:#111111 !important;}
.featurs .featurs-item .featurs-icon i,.featurs-item .featurs-icon i{color:#ffffff !important;}
.featurs .featurs-item .featurs-icon::after,.featurs-item .featurs-icon::after{background:#7E0441 !important;}
.text-white.bg-primary,.bg-primary,.text-white.bg-secondary,.bg-secondary{background-color:#7E0441 !important;}
.text-primary{color:#111111 !important;}
.text-secondary{color:#7E0441 !important;}
.site-logo{height:96px !important;width:560px !important;max-width:62vw !important;object-fit:contain !important;object-position:left center !important;display:block;}
.navbar-brand{min-width:560px !important;max-width:680px !important;flex:0 0 auto !important;}
@media (max-width: 991.98px){.site-logo{width:340px !important;height:76px !important;max-width:72vw !important;}.navbar-brand{min-width:0 !important;max-width:80vw !important;}}
.trade-company-img{height:120px !important;background:#fff !important;}
.trade-company-img img{height:100px !important;object-fit:contain !important;background:#fff !important;padding:10px !important;}
.range-enquiry-card{cursor:pointer;transition:.3s ease;}
.range-enquiry-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.12);}
.range-enquiry-card .btn{position:relative;z-index:2;}
.range-enquiry-card .btn,.fruite-item .btn,.vesitable-item .btn{background:#7E0441 !important;border-color:#7E0441 !important;color:#fff !important;}
.range-enquiry-card .btn:hover,.fruite-item .btn:hover,.vesitable-item .btn:hover{background:#5f0231 !important;border-color:#5f0231 !important;color:#fff !important;}


/* --- final consistency polish --- */
:root{
  --bs-primary:#111111 !important;
  --bs-secondary:#7E0441 !important;
  --bs-warning:#7E0441 !important;
  --bs-yellow:#7E0441 !important;
}
/* remove yellow globally */
[class*="warning"], .text-warning, .bg-warning, .border-warning {color: inherit;}
.text-warning{color:#7E0441 !important;}
.bg-warning{background:#7E0441 !important;}
.border-warning{border-color:#7E0441 !important;}
.btn-warning{background:#7E0441 !important;border-color:#7E0441 !important;color:#fff !important;}
.dropdown .dropdown-menu a:hover,.dropdown .dropdown-menu a:focus,
.btn:hover,.btn:focus,.btn:active,.btn-primary:hover,.btn-primary:focus,.btn-primary:active,
.btn.border-secondary:hover,.btn.border-secondary:focus,.btn.border-secondary:active,
a.btn:hover,a.btn:focus,.back-to-top:hover,.back-to-top:focus{
  background:#7E0441 !important;
  border-color:#7E0441 !important;
  color:#fff !important;
  box-shadow:none !important;
}
/* search bar button hover */
.hero-header .position-relative .btn:hover,
.hero-header .position-relative .btn:focus{background:#7E0441 !important;border-color:#7E0441 !important;color:#fff !important;}

/* feature icons */
.featurs .featurs-item .featurs-icon,
.featurs-item .featurs-icon{
  background:#111111 !important;
}
.featurs .featurs-item .featurs-icon i,
.featurs-item .featurs-icon i{
  color:#ffffff !important;
}
.featurs .featurs-item .featurs-icon::after,
.featurs-item .featurs-icon::after{
  background:#7E0441 !important;
}
/* logo visibility */
.navbar-brand{min-width:620px !important;max-width:760px !important;flex:0 0 auto !important;display:flex;align-items:center;}
.site-logo{height:108px !important;width:620px !important;max-width:68vw !important;object-fit:contain !important;object-position:left center !important;display:block !important;}
.footer-logo{height:72px !important;width:340px !important;max-width:70vw !important;object-fit:contain !important;object-position:left center !important;display:block !important;}
@media (max-width: 991.98px){
  .navbar-brand{min-width:0 !important;max-width:82vw !important;}
  .site-logo{width:360px !important;height:80px !important;max-width:75vw !important;}
}
/* hero upgrade */
.hero-header{padding-top:3rem !important;padding-bottom:3rem !important;}
.hero-header::before{
  background:linear-gradient(rgba(10,10,10,.55), rgba(10,10,10,.45)), url(../img/home-slide-background.jpg) center center/cover no-repeat !important;
  filter:blur(10px) brightness(.88) !important;
}
.hero-header .col-md-12.col-lg-7{
  background:rgba(0,0,0,.28);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:38px 36px;
}
.hero-header h4,.hero-header h1{color:#fff !important;}
.hero-header .form-control{
  border-color:#7E0441 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}
.hero-header .carousel-item img{
  border-radius:24px !important;
  padding:18px !important;
  object-fit:contain !important;
  background:#fff !important;
}
.hero-header .carousel-item a{
  background:#7E0441 !important;
  color:#fff !important;
  border-radius:999px !important;
}
.trade-company-img{height:110px !important;display:flex;align-items:center;justify-content:center;background:#fff !important;}
.trade-company-img img{max-width:85% !important;max-height:86px !important;object-fit:contain !important;background:#fff !important;padding:8px !important;}
.trade-company-card{flex:0 0 280px;}


/* Previous-version amendments only */
/* Original logo preserved; only enlarged for readability */
.navbar-brand{min-width:300px!important;max-width:380px!important;overflow:visible!important;}
.site-logo{height:118px!important;width:auto!important;max-width:none!important;object-fit:contain!important;display:block!important;}
.footer-logo{height:82px!important;width:auto!important;max-width:220px!important;object-fit:contain!important;}
@media(max-width:991.98px){.navbar-brand{min-width:0!important;max-width:72vw!important}.site-logo{height:86px!important;max-width:72vw!important}}
/* Top bar exactly black / white / burgundy */
.topbar{background:#111111!important;}
.topbar,.topbar a,.topbar small,.topbar span{color:#ffffff!important;}
.topbar i,.topbar .fa,.topbar .fas,.topbar .fab{color:#7E0441!important;}
/* Footer icons burgundy */
.footer i,.footer .fa,.footer .fas,.footer .fab{color:#7E0441!important;}
.footer .btn-square,.footer .btn-md-square{border-color:#7E0441!important;color:#7E0441!important;}
.footer .btn-square:hover,.footer .btn-md-square:hover{background:#7E0441!important;color:#ffffff!important;}
/* Home product-range cards now add to enquiry */
.range-enquiry-card{cursor:pointer;transition:.3s ease;}
.range-enquiry-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.12);}
.range-enquiry-card .btn{background:#7E0441!important;border-color:#7E0441!important;color:#fff!important;position:relative;z-index:2;}
/* Trade reference logos */
.trade-company-img{height:112px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;}
.trade-company-img img{max-width:84%!important;max-height:84px!important;object-fit:contain!important;background:#fff!important;padding:6px!important;}
.trade-logo-fallback{width:100%;height:100%;align-items:center;justify-content:center;text-align:center;font-weight:700;color:#7E0441;padding:12px;}

/* Original Optional Electrical logo restored top and footer */
.navbar-brand{min-width:300px!important;max-width:420px!important;display:flex;align-items:center!important;}
.site-logo{height:96px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;display:block!important;}
.footer-logo{height:82px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;display:block!important;background:transparent!important;border-radius:0!important;padding:0!important;}
@media (max-width: 991.98px){.navbar-brand{min-width:0!important;max-width:74vw!important;}.site-logo{height:74px!important;max-width:74vw!important;}}

/* Logo spacing cleanup: keep only original logo top and footer */
.footer-item .d-flex.align-items-center.mb-3{gap:0!important;margin-bottom:1rem!important;}
.footer-logo{margin-right:0!important;display:block!important;}
.navbar-brand{max-width:fit-content!important;min-width:0!important;}
.site-logo{display:block!important;}


/* Trade References automatic sliding */
.auto-slider-shell{overflow:hidden;position:relative;width:100%;}
.auto-slider-track{
  display:flex;
  gap:22px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:10px 0 18px;
}
.auto-slider-track::-webkit-scrollbar{display:none;}
.trade-company-card{
  flex:0 0 280px;
}

/* Products page consistency fixes */
.products .fruite-item{display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;}
.products .fruite-item .text-white.bg-secondary{top:12px!important;left:12px!important;right:12px!important;max-width:calc(100% - 24px)!important;font-size:.82rem!important;line-height:1.2!important;z-index:3!important;white-space:normal!important;}
.products .fruite-item .fruite-img{height:220px!important;margin-top:52px!important;background:#ffffff!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.products .fruite-item .fruite-img img{height:100%!important;width:100%!important;object-fit:contain!important;padding:14px!important;background:#ffffff!important;}
.products .fruite-item .border.border-secondary.border-top-0.rounded-bottom{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-height:210px!important;height:210px!important;}
.products .fruite-item h5{min-height:52px!important;display:flex!important;align-items:flex-start!important;margin-bottom:.75rem!important;}
.products .fruite-item p.small{min-height:44px!important;margin-bottom:1rem!important;}
.products .fruite-item .btn{margin-top:auto!important;align-self:flex-start!important;}

/* Remove burgundy category labels on product images */
.products .fruite-item > .text-white.bg-secondary{display:none!important;}
.products .fruite-item .fruite-img{margin-top:0!important;}

/* Remove category labels under Explore Our Product Categories */
.ranges .range-item > .text-white.bg-primary.position-absolute, .ranges .range-item > .text-white.bg-secondary.position-absolute{display:none!important;}

/* Align all product-card buttons and add breathing room above buttons */
.products section .row > [class*="col-"]{display:flex!important;}
.products .fruite-item{width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;}
.products .fruite-item .fruite-img{flex:0 0 220px!important;height:220px!important;}
.products .fruite-item > .p-4{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:235px!important;height:235px!important;}
.products .fruite-item h5{min-height:48px!important;margin-bottom:10px!important;}
.products .fruite-item p.small{flex:1 1 auto!important;min-height:54px!important;margin-bottom:18px!important;}
.products .fruite-item .always-visible-enquiry{margin-top:auto!important;align-self:flex-start!important;}
@media(max-width:767.98px){.products .fruite-item > .p-4{height:auto!important;min-height:235px!important;}}

/* Align View Category buttons in Explore Our Product Categories */
.ranges .row.g-4.mt-2 > [class*="col-"]{display:flex!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item > .p-4{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item > .p-4 h4{min-height:58px!important;margin-bottom:12px!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item > .p-4 p{flex:1 1 auto!important;margin-bottom:18px!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item > .p-4 .d-flex{margin-top:auto!important;}
.ranges .row.g-4.mt-2 > [class*="col-"] > .range-item > .p-4 .btn{margin-top:auto!important;}

/* Loader removed */
#spinner{display:none!important;}

/* Supplier brands section */
.supplier-brands-section{background:#f8f8f8;}
.supplier-strip-card{background:#fff;}
.supplier-strip-scroll{overflow-x:auto;overflow-y:hidden;text-align:center;}
.supplier-strip-scroll::-webkit-scrollbar{height:8px;}
.supplier-strip-image{max-width:100%;min-width:760px;height:auto;display:inline-block;}
@media (max-width: 767.98px){.supplier-strip-image{min-width:700px;}}

/* Seven product categories home-page update */
.category-home-card .p-4{min-height:96px;display:flex;align-items:center;justify-content:center;}
.ranges .range-item{height:100%;}
.ranges .range-item .p-4{min-height:150px;}

/* Seven product categories matched to the Products page */
.product-category-section{scroll-margin-top:150px;}
.products .row.g-4 > [class*="col-"]{display:flex;}
.products .fruite-item{width:100%;display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;}
.products .fruite-item .fruite-img{height:220px!important;margin-top:0!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.products .fruite-item .fruite-img img{width:100%!important;height:100%!important;object-fit:contain!important;padding:14px!important;background:#fff!important;}
.products .fruite-item > .text-white.position-absolute{display:none!important;}
.products .fruite-item .p-4{display:flex!important;flex-direction:column!important;flex-grow:1!important;min-height:220px!important;}
.products .fruite-item h5{min-height:52px!important;}
.products .fruite-item p.small{margin-bottom:18px!important;flex-grow:1!important;}
.products .fruite-item .btn{margin-top:auto!important;}
html{scroll-behavior:smooth;}

/* Extra product cards: maintain consistent layout */
.products .row > [class*="col-"]{align-items:stretch;}
.products .fruite-item{width:100%;display:flex!important;flex-direction:column!important;}
.products .fruite-item .p-4{flex:1 1 auto;}

/* Final product-card spacing: no overlap between descriptions and enquiry buttons */
.products .fruite-item > .p-4{height:auto!important;min-height:270px!important;display:flex!important;flex-direction:column!important;}
.products .fruite-item h5{min-height:52px!important;margin-bottom:12px!important;}
.products .fruite-item p.small{min-height:76px!important;margin-bottom:26px!important;flex:1 1 auto!important;}
.products .fruite-item .always-visible-enquiry,.products .fruite-item .btn{position:static!important;margin-top:auto!important;align-self:flex-start!important;flex:0 0 auto!important;}
@media(max-width:767.98px){.products .fruite-item > .p-4{min-height:260px!important;}}

/* Keep Add to Enquiry buttons fully inside product card borders */
.products .fruite-item{overflow:hidden!important;}
.products .fruite-item > .p-4{box-sizing:border-box!important;width:100%!important;overflow:hidden!important;padding:1.25rem!important;}
.products .fruite-item .always-visible-enquiry,
.products .fruite-item .btn{
    position:static!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
    justify-content:center!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.2!important;
    margin-top:1rem!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:.65rem .75rem!important;
    overflow-wrap:anywhere!important;
}
.products .fruite-item p.small{margin-bottom:.35rem!important;}

/* Final product card layout fix */
.products .fruite-item{display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;}
.products .fruite-item .fruite-img{flex:0 0 220px!important;height:220px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;}
.products .fruite-item .fruite-img img{width:100%!important;height:100%!important;object-fit:contain!important;padding:14px!important;background:#fff!important;}
.products .fruite-item > .p-4,.products .fruite-item .p-4.border.border-secondary.border-top-0.rounded-bottom{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;box-sizing:border-box!important;width:100%!important;min-height:285px!important;height:285px!important;padding:1.25rem!important;overflow:hidden!important;}
.products .fruite-item h5{min-height:56px!important;margin-bottom:.75rem!important;line-height:1.25!important;}
.products .fruite-item p.small{flex:1 1 auto!important;min-height:72px!important;margin-bottom:.85rem!important;line-height:1.35!important;}
.products .fruite-item .always-visible-enquiry,.products .fruite-item .btn{display:flex!important;position:static!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;white-space:normal!important;line-height:1.2!important;text-align:center!important;padding:.72rem .8rem!important;margin:0!important;margin-top:auto!important;align-self:stretch!important;overflow:hidden!important;}
@media (max-width:767.98px){.products .fruite-item > .p-4,.products .fruite-item .p-4.border.border-secondary.border-top-0.rounded-bottom{height:auto!important;min-height:285px!important;}}

/* Strong fix: keep product buttons completely inside container borders */
.products .fruite-item{height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
.products .fruite-item > .p-4,.products .fruite-item .p-4.border.border-secondary.border-top-0.rounded-bottom{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-height:300px!important;height:300px!important;width:100%!important;box-sizing:border-box!important;padding:1.25rem!important;overflow:hidden!important;}
.products .fruite-item h5{min-height:58px!important;margin-bottom:.75rem!important;}
.products .fruite-item p.small{flex:1 1 auto!important;min-height:86px!important;margin-bottom:1rem!important;line-height:1.35!important;}
.products .fruite-item .btn,.products .fruite-item .always-visible-enquiry{margin-top:auto!important;width:100%!important;max-width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;align-self:stretch!important;box-sizing:border-box!important;padding:.7rem .8rem!important;position:static!important;white-space:normal!important;overflow:hidden!important;text-align:center!important;line-height:1.2!important;}
@media(max-width:767.98px){.products .fruite-item > .p-4,.products .fruite-item .p-4.border.border-secondary.border-top-0.rounded-bottom{height:auto!important;min-height:300px!important;}}
