body{font-family:Arial,sans-serif}
/* =====================================
   NAVBAR
===================================== */

.navbar{
    background:rgba(0,0,0,.75);
    backdrop-filter:blur(12px);
    transition:.3s;
    padding:12px 0;
}

.club-logo{
    width:60px;
    height:60px;
    object-fit:cover;
    border-radius:50%;
    background:#fff;
    border:3px solid rgba(255,255,255,.2);
}

.brand-text{
    display:flex;
    flex-direction:column;
    line-height:1.2;
}

.brand-title{
    color:#fff;
    font-size:1.25rem;
    font-weight:700;
    letter-spacing:.5px;
}

.brand-subtitle{
    color:#D4AF37;
    font-size:.78rem;
    letter-spacing:1px;
    text-transform:uppercase;
}

.navbar-nav .nav-link{
    color:#fff;
    font-weight:500;
    margin-left:18px;
    position:relative;
    transition:.3s;
}

.navbar-nav .nav-link:hover{
    color:#D4AF37;
}

.navbar-nav .nav-link.active{
    color:#D4AF37;
}

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-4px;
    width:0;
    height:2px;
    background:#D4AF37;
    transition:.3s;
}

.navbar-nav .nav-link:hover::after{
    width:100%;
}
.carousel-item{height:85vh;background-size:cover;background-position:center}
.overlay{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.hero-image{
    height:90vh;
    object-fit:cover;
}

.carousel-item{
    position:relative;
}

.overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.45);
}

.hero-caption{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    text-align:center;
    color:#fff;
    z-index:2;
    width:80%;
}

.hero-caption h1{
    text-shadow:2px 2px 8px rgba(0,0,0,.8);
}

.hero-caption p{
    text-shadow:1px 1px 6px rgba(0,0,0,.8);
}
.section-title{font-weight:700;margin-bottom:20px}
.counter{font-size:2.2rem;font-weight:700;color:#8B5A2B}
.card-img-top{
    height:250px;
    object-fit:cover;
    transition:.4s;
}

.card:hover .card-img-top{
    transform:scale(1.05);
}

.card{
    overflow:hidden;
    border-radius:15px;
}

#projects img{
    border-radius:20px;
}

.impact-card{
    background:#fff;
    border-radius:18px;
    padding:35px 25px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.impact-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.impact-icon{
    width:85px;
    height:85px;
    margin:auto;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:34px;
    margin-bottom:20px;
}

.impact-card h1{
    font-size:3rem;
    font-weight:700;
    color:#8B5A2B;
}

.impact-card h5{
    margin-top:10px;
    font-weight:600;
}

.impact-card p{
    color:#6c757d;
    margin-top:10px;
    font-size:.95rem;
}

/* ABOUT */

.about-card{
    background:#fff;
    border-radius:18px;
    padding:25px;
    height:100%;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.about-card:hover{
    transform:translateY(-6px);
}

.about-icon{
    width:70px;
    height:70px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:28px;
    margin-bottom:20px;
}

/* ANNOUNCEMENTS */

.announcement-box{
    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.announcement-item{
    display:flex;
    gap:20px;
    margin-bottom:25px;
}

.announcement-date{
    width:70px;
    min-width:70px;
    height:70px;
    background:#ffc107;
    color:#000;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:bold;
    text-align:center;
    font-size:.9rem;
}

/* ==========================================
   CTA
========================================== */

.cta-section{
    background:linear-gradient(135deg,#1E3C72,#2A5298);
    overflow:hidden;
}

.cta-logo{
    width:320px;
    filter:drop-shadow(0 15px 35px rgba(0,0,0,.35));
}

/* ==========================================
   FOOTER
========================================== */

.footer-section{
    background:#101010;
    color:#bdbdbd;
    padding:80px 0 30px;
}

.footer-logo{
    width:70px;
    height:70px;
    border-radius:50%;
    background:#fff;
}

.footer-section h5{
    color:#fff;
    margin-bottom:25px;
}

.footer-links{
    list-style:none;
    padding:0;
}

.footer-links li{
    margin-bottom:12px;
}

.footer-links a{
    color:#cfcfcf;
    text-decoration:none;
    transition:.3s;
}

.footer-links a:hover{
    color:#ffc107;
    padding-left:6px;
}

.social-icons a{
    width:45px;
    height:45px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#1f1f1f;
    color:#fff;
    font-size:20px;
    margin-right:10px;
    transition:.3s;
}

.social-icons a:hover{
    background:#ffc107;
    color:#000;
    transform:translateY(-5px);
}