:root{
--orange:#f58220;
--maroon:#800020;
--white:#ffffff;
}

body{
font-family:'Poppins',sans-serif;
overflow-x:hidden;
}

.topbar{
background:var(--maroon);
color:white;
padding:8px;
}

.navbar{
box-shadow:0 3px 10px rgba(0,0,0,.1);
}

.hero-btn{
background:var(--orange);
border:none;
padding:12px 30px;
border-radius:30px;
color:white;
}

.hero-btn:hover{
transform:translateY(-3px);
}

.counter{
font-size:40px;
font-weight:bold;
color:var(--maroon);
}

.product-card{
transition:.4s;
}

.product-card:hover{
transform:translateY(-10px);
}

footer{
    background:#800020;
    color:#ffffff;
    padding:40px 0;
}
.footer,
footer{
    border-top:4px solid #f7941d;
}

/* WhatsApp Button - Right Side */

.whatsapp{
    position:fixed;
    right:20px;
    bottom:20px;
    width:60px;
    height:60px;
    background:#25D366;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    font-size:30px;
    text-decoration:none;
    z-index:9999;
}

.governance-card img{
    width:100%;
    height:350px;
    object-fit:cover;
}
iframe[title="chat widget"]{
    left:20px !important;
    right:auto !important;
}

#tawkchat-container{
    left:20px !important;
    right:auto !important;
}
.whatsapp{
    right:25px;
    bottom:25px;
}
iframe[title="chat widget"]{
    left:25px !important;
}

.heroSwiper{
    width:100%;
    height:600px;
    overflow:hidden;
}

.swiper-slide{
    background-size:cover;
    background-position:center;
    position:relative;
}

.slide1{
    background-image:url('../images/slider/slide1.JPG');
}

.slide2{
    background-image:url('../images/slider/slide2.JPG');
}

.slide3{
    background-image:url('../images/slider/slide3.JPG');
}

.slide4{
    background-image:url('../images/slider/slide4.JPG');
}

.slide5{
    background-image:url('../images/slider/slide5.JPG');
}

.slide6{
    background-image:url('../images/slider/slide6.JPG');
}

.slide-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.5);
    color:white;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
}
.slide-overlay h1{
    font-size:3rem;
    font-weight:700;
}

.slide-overlay p{
    font-size:1.3rem;
    margin-bottom:20px;
}

.slide-overlay .btn{
    padding:12px 30px;
    border-radius:30px;
}
.cuea-orange-btn{
    background:#f7941d;
    color:#fff;
    border:none;
}

.cuea-orange-btn:hover{
    background:#e67e00;
    color:#fff;
}
.profile-title{
    background:#f7941d;
    color:#fff;
    text-align:center;
    padding:12px;
}
.cuea-btn{
    background:#800020;
    color:#fff;
    border:none;
    padding:10px 25px;
    border-radius:6px;
    font-weight:600;
}

.cuea-btn:hover{
    background:#a52a2a;
    color:#fff;
}

.cuea-orange{
    color:#f7941d;
}

.cuea-maroon{
    color:#800020;
}
.contact-card{
    border-top:4px solid #f7941d;
}
.cuea-btn{
    background:#800020;
    color:#fff;
    border:none;
    border-radius:6px;
    padding:10px 25px;
    font-weight:600;
}

.cuea-btn:hover{
    background:#a52a2a;
    color:#fff;
}

.step-active{
    background:#800020 !important;
    color:#fff !important;
}

.registration-card{
    border-top:5px solid #f7941d;
}

.section-title{
    color:#800020;
    font-weight:700;
}
/* CUEA SACCO Orange Navbar */

.cuea-navbar{
    background-color:#f57c00 !important;
}

.cuea-navbar .navbar-brand{
    color:#ffffff !important;
}

.cuea-navbar .nav-link{
    color:#ffffff !important;
    font-weight:500;
    padding-left:15px;
    padding-right:15px;
}

.cuea-navbar .nav-link:hover{
    color:#fff3e0 !important;
}

.cuea-navbar .nav-link.active{
    color:#ffffff !important;
    font-weight:bold;
}

.navbar-toggler{
    border-color:#ffffff;
}

.navbar-toggler-icon{
    filter: brightness(0) invert(1);
}
/* Partners Logo Slider */

.partners-section{
    background:#ffffff;
    overflow:hidden;
}

.partners-slider{
    width:100%;
    overflow:hidden;
    position:relative;
}

.partners-track{
    display:flex;
    align-items:center;
    width:max-content;
    animation:scrollPartners 25s linear infinite;
}

.partners-track img{
    height:80px;
    width:auto;
    margin:0 40px;
    object-fit:contain;
    transition:0.3s;
}

.partners-track img:hover{
    transform:scale(1.1);
}

@keyframes scrollPartners{
    0%{
        transform:translateX(0);
    }

    100%{
        transform:translateX(-50%);
    }
}
.footer-bottom{
    border-top:1px solid rgba(255,255,255,0.2);
    margin-top:20px;
    padding-top:15px;
    text-align:center;
    color:#fff;
    font-size:14px;
}
.sacco-logo{
    height:60px;
    width:auto;
    object-fit:contain;
}

.navbar-brand{
    display:flex;
    align-items:center;
}
/* Membership Registration Alert */

.membership-alert{
    position:fixed;
    bottom:90px;
    left:20px;
    z-index:9998;
    animation:slideIn 1s ease;
}

.alert-content{
    background:#800020;
    color:#fff;
    padding:15px 20px;
    border-radius:12px;
    box-shadow:0 5px 20px rgba(0,0,0,0.3);
    max-width:350px;
    font-size:14px;
}

.register-btn{
    display:inline-block;
    margin-top:10px;
    background:#f7941d;
    color:#fff;
    text-decoration:none;
    padding:8px 18px;
    border-radius:6px;
    font-weight:bold;
}

.register-btn:hover{
    background:#e67e00;
    color:#fff;
}

.pulse-dot{
    display:inline-block;
    width:12px;
    height:12px;
    background:#00ff66;
    border-radius:50%;
    margin-right:8px;
    animation:pulse 1.5s infinite;
}

@keyframes pulse{
    0%{transform:scale(1);}
    50%{transform:scale(1.4);}
    100%{transform:scale(1);}
}

@keyframes slideIn{
    from{
        transform:translateX(-100%);
        opacity:0;
    }
    to{
        transform:translateX(0);
        opacity:1;
    }
}
/* Membership Alert */

.membership-alert{
    position:fixed;
    bottom:90px;
    left:20px;
    z-index:9998;
    animation:slideIn 1s ease;
}

.alert-content{
    position:relative;
    background:#800020;
    color:#fff;
    padding:15px 20px;
    border-radius:12px;
    box-shadow:0 5px 20px rgba(0,0,0,0.3);
    max-width:350px;
}

.close-alert{
    position:absolute;
    top:5px;
    right:10px;
    background:none;
    border:none;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    font-weight:bold;
}

.close-alert:hover{
    color:#f7941d;
}

.register-btn{
    display:inline-block;
    background:#f7941d;
    color:#fff;
    text-decoration:none;
    padding:8px 18px;
    border-radius:6px;
    font-weight:600;
}

.register-btn:hover{
    background:#e67e00;
    color:#fff;
}

.pulse-dot{
    display:inline-block;
    width:12px;
    height:12px;
    background:#00ff66;
    border-radius:50%;
    margin-right:8px;
    animation:pulse 1.5s infinite;
}

@keyframes pulse{
    0%{transform:scale(1);}
    50%{transform:scale(1.4);}
    100%{transform:scale(1);}
}

@keyframes slideIn{
    from{
        transform:translateX(-100%);
        opacity:0;
    }
    to{
        transform:translateX(0);
        opacity:1;
    }
}
.events-gallery img{
    height:250px;
    object-fit:cover;
}

.card-img-top{
    height:250px;
    object-fit:cover;
}

.card{
    transition:0.3s;
}

.card:hover{
    transform:translateY(-5px);
}

.section-title{
    color:#800020;
    font-weight:700;
    border-left:5px solid #f7941d;
    padding-left:15px;
}
/* Products Hero */

.products-hero{
    background:linear-gradient(
    rgba(128,0,32,0.85),
    rgba(128,0,32,0.85)),
    url('../images/slider/slide1.JPG');
    background-size:cover;
    background-position:center;
    color:#fff;
    padding:100px 20px;
    text-align:center;
}

.products-hero h1{
    font-size:3rem;
    font-weight:700;
}

/* Product Banners */

.product-banner{
    width:100%;
    height:300px;
    object-fit:cover;
    border-radius:12px;
    transition:0.3s;
}

.product-banner:hover{
    transform:scale(1.03);
}

/* Product Cards */

.product-detail-card{
    border-top:5px solid #f7941d;
    transition:0.3s;
}

.product-detail-card:hover{
    transform:translateY(-5px);
}

/* Benefits */

.products-benefits{
    background:#800020;
    padding:60px 0;
    color:#fff;
}
/* About Hero */

.about-hero{
    background:linear-gradient(
    rgba(128,0,32,0.85),
    rgba(128,0,32,0.85)),
    url('../images/slider/slide2.JPG');
    background-size:cover;
    background-position:center;
    color:white;
    padding:120px 20px;
    text-align:center;
}

.about-hero h1{
    font-size:3rem;
    font-weight:700;
}

/* Vision Mission */

.vision-mission{
    background:#f8f9fa;
}

.vm-card{
    background:#fff;
    padding:30px;
    border-top:5px solid #f7941d;
    border-radius:10px;
    box-shadow:0 5px 15px rgba(0,0,0,.1);
    height:100%;
}

.vm-card h2{
    color:#800020;
}

/* Core Values */

.value-card{
    background:#fff;
    border-top:4px solid #f7941d;
    padding:25px;
    border-radius:10px;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
    transition:.3s;
}

.value-card:hover{
    transform:translateY(-8px);
}

.value-card h4{
    color:#800020;
}

/* Why Join */

.why-join{
    background:#800020;
}

.why-join h3{
    font-size:40px;
    color:#f7941d;
}
.news-hero{
    background:linear-gradient(
    rgba(128,0,32,.85),
    rgba(128,0,32,.85)),
    url('../images/slider/slide1.JPG');

    background-size:cover;
    background-position:center;
    color:#fff;
    padding:120px 20px;
    text-align:center;
}

.featured-news{
    background:#fff;
    padding:30px;
    border-radius:12px;
    box-shadow:0 5px 20px rgba(0,0,0,.1);
}

.news-card{
    border-top:4px solid #f7941d;
    transition:.3s;
}

.news-card:hover{
    transform:translateY(-8px);
}

.news-cta{
    background:#800020;
    color:#fff;
    padding:60px 20px;
}
.footer-links{
    list-style:none;
    padding-left:0;
    margin:0;
}

.footer-links li{
    margin-bottom:8px;
}

.footer-links a{
    color:#ffffff !important;
    text-decoration:none !important;
    transition:0.3s;
}

.footer-links a:hover{
    color:#f7941d !important;
    padding-left:5px;
}
.footer-bottom{
    text-align:center;
    margin-top:20px;
    padding-top:15px;
    font-size:14px;
    color:#ffffff;
}

.visitor-stats{
    text-align:center;
    color:#ffffff;
    font-size:14px;
    padding:12px 0;
    margin:10px 0;
}

.visitor-stats span{
    font-weight:bold;
}
.visitor-stats{
    text-align:center;
    color:#ffffff;
    font-size:14px;
    padding:12px 0;
}

.footer-links{
    list-style:none;
    padding-left:0;
}

.footer-links a{
    color:#fff !important;
    text-decoration:none !important;
}

.footer-links a:hover{
    color:#f7941d !important;
}
.visitor-stats{
    text-align:center;
    padding:10px;
    margin:15px 0;
    background:rgba(255,255,255,0.08);
    border-radius:6px;
    color:#fff;
    font-size:14px;
}

.footer-links{
    list-style:none;
    padding-left:0;
}

.footer-links li{
    margin-bottom:8px;
}

.footer-links a{
    color:#ffffff !important;
    text-decoration:none !important;
}

.footer-links a:hover{
    color:#f7941d !important;
}
/* ==================================================
   CUEA SACCO FINAL OVERRIDES
================================================== */

/* TOP CONTACT BAR */

.topbar{
    background:#800020 !important;
    color:#ffffff !important;
    padding:10px 0;
    border-bottom:2px solid #f7941d;
}

.topbar a{
    color:#ffffff !important;
    text-decoration:none;
    font-weight:600;
}

.topbar a:hover{
    color:#f7941d !important;
}

/* NAVBAR */

.cuea-navbar{
    background:#f57c00 !important;
}

.cuea-navbar .navbar-brand{
    color:#ffffff !important;
    font-weight:700;
}

.cuea-navbar .nav-link{
    color:#ffffff !important;
    font-weight:600;
}

.cuea-navbar .nav-link:hover{
    color:#fff3e0 !important;
}

.navbar-toggler{
    border-color:#ffffff;
}

.navbar-toggler-icon{
    filter:brightness(0) invert(1);
}

/* SACCO LOGO */

.sacco-logo{
    height:65px;
    width:auto;
    margin-right:10px;
    object-fit:contain;
}

.navbar-brand{
    display:flex;
    align-items:center;
}

/* FOOTER */

footer{
    background:#800020;
    color:#ffffff;
    padding:40px 0;
}

.footer{
    border-top:4px solid #f7941d;
}

/* FOOTER LINKS */

.footer-links{
    list-style:none;
    padding-left:0;
    margin:0;
}

.footer-links li{
    margin-bottom:8px;
}

.footer-links a{
    color:#ffffff !important;
    text-decoration:none !important;
    transition:.3s;
}

.footer-links a:hover{
    color:#f7941d !important;
    padding-left:5px;
}

/* VISITOR COUNTER */

.visitor-stats{
    text-align:center;
    padding:12px;
    margin:15px 0;
    background:rgba(255,255,255,.08);
    border-radius:8px;
    color:#ffffff;
    font-size:14px;
    font-weight:500;
}

/* FOOTER COPYRIGHT */

.footer-bottom{
    text-align:center;
    margin-top:20px;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.2);
    color:#ffffff;
    font-size:14px;
}

/* WHATSAPP */

.whatsapp{
    position:fixed;
    right:25px;
    bottom:25px;
    width:60px;
    height:60px;
    background:#25D366;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#ffffff;
    font-size:30px;
    text-decoration:none;
    z-index:9999;
}

/* MEMBERSHIP ALERT */

.membership-alert{
    position:fixed;
    bottom:90px;
    left:20px;
    z-index:9998;
    animation:slideIn 1s ease;
}

.alert-content{
    position:relative;
    background:#800020;
    color:#ffffff;
    padding:15px 20px;
    border-radius:12px;
    box-shadow:0 5px 20px rgba(0,0,0,.3);
    max-width:350px;
}

.close-alert{
    position:absolute;
    top:5px;
    right:10px;
    background:none;
    border:none;
    color:#ffffff;
    font-size:22px;
    cursor:pointer;
    font-weight:bold;
}

.close-alert:hover{
    color:#f7941d;
}

.register-btn{
    display:inline-block;
    background:#f7941d;
    color:#ffffff;
    text-decoration:none;
    padding:8px 18px;
    border-radius:6px;
    font-weight:600;
}

.register-btn:hover{
    background:#e67e00;
    color:#ffffff;
}

.pulse-dot{
    display:inline-block;
    width:12px;
    height:12px;
    background:#00ff66;
    border-radius:50%;
    margin-right:8px;
    animation:pulse 1.5s infinite;
}

@keyframes pulse{
    0%{transform:scale(1);}
    50%{transform:scale(1.4);}
    100%{transform:scale(1);}
}

@keyframes slideIn{
    from{
        transform:translateX(-100%);
        opacity:0;
    }
    to{
        transform:translateX(0);
        opacity:1;
    }
}

/* MOBILE MENU */

@media print {

    body * {
        visibility: hidden;
    }

    #printArea,
    #printArea * {
        visibility: visible;
    }

    #printArea {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        background: #fff;
        padding: 20px;
    }

    .btn,
    .navbar,
    footer,
    form,
    .section-title {
        display: none !important;
    }

    .card {
        border: none !important;
        box-shadow: none !important;
    }

    .print-header {
        display: block !important;
    }

    table {
        width: 100%;
        border-collapse: collapse;
    }

    table th,
    table td {
        border: 1px solid #000 !important;
        padding: 6px;
    }

    .card-header {
        background: #800000 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
/* FULL SCREEN PRIVACY NOTICE */

.privacy-overlay{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.92);
    z-index:999999;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:20px;
}

.privacy-box{
    max-width:800px;
    width:100%;
    background:#800000;
    color:#fff;
    padding:50px;
    border-radius:15px;
    text-align:center;
    box-shadow:0 0 30px rgba(0,0,0,.5);
}

.privacy-icon{
    font-size:60px;
    margin-bottom:20px;
}

.privacy-box h1{
    font-weight:700;
    margin-bottom:20px;
}

.privacy-box p{
    font-size:18px;
    line-height:1.8;
}

.privacy-buttons{
    margin-top:30px;
}

.privacy-buttons .btn{
    margin:10px;
}
.ratio iframe{
    border-radius:10px;
}

.card iframe{
    box-shadow:0 4px 15px rgba(0,0,0,0.15);
}