/* =====================================
   SAMRUDDHA BHARAT MISSION
   PREMIUM WEBSITE STYLE
===================================== */



/* =====================================
   GLOBAL SETTINGS
===================================== */


*{

margin:0;
padding:0;
box-sizing:border-box;

}


body{

font-family:'Poppins',sans-serif;

background:#F8FAFC;

color:#1F2937;

line-height:1.7;

}



h1,
h2,
h3,
h4{

font-weight:700;

color:#0B2D5C;

}



p{

color:#64748B;

}



a{

text-decoration:none;

transition:0.3s;

}








/* =====================================
   NAVBAR
===================================== */

.navbar-brand img{
    width:60px;
    height:60px;
    object-fit:contain;
}

.navbar-brand h5{
    margin:0;
    font-size:1.25rem;
    color:#0B2D5C;
}

.navbar-brand small{
    font-size:12px;
    letter-spacing:0.5px;
}


.nav-link{

font-weight:500;

margin-left:15px;

color:#0B2D5C!important;

}



.nav-link:hover{

color:#F4A623!important;

}


/* Reveal Animation */

.info-card,
.pillar-card,
.product-card,
section {

    opacity: 0;
    transform: translateY(30px);
    transition: all .6s ease;

}

.show {

    opacity: 1 !important;
    transform: translateY(0) !important;

}



/* Back To Top Button */

#backToTop{

position:fixed;

right:25px;

bottom:25px;

width:50px;

height:50px;

border:none;

border-radius:50%;

background:#F4A623;

color:#fff;

font-size:22px;

cursor:pointer;

display:flex;

align-items:center;

justify-content:center;

opacity:0;

visibility:hidden;

transition:.3s;

z-index:9999;

box-shadow:0 10px 25px rgba(0,0,0,.25);

}

#backToTop.show{

opacity:1;

visibility:visible;

}

#backToTop:hover{

background:#0B2D5C;

transform:translateY(-4px);

}


.nav-link.active{

color:#F4A623!important;

}



.btn-help{

background:#F4A623;

color:white!important;

padding:8px 18px!important;

border-radius:30px;

}







/* =====================================
   HERO SECTION
===================================== */


.hero{

padding:150px 0 80px;

background:

linear-gradient(
90deg,
rgba(11,45,92,0.95),
rgba(11,45,92,0.75)
),

url("../images/hero-bg.jpg");


background-size:cover;

background-position:center;

color:white;

}



.hero h1{

font-size:55px;

color:white;

line-height:1.2;

}



.hero p{

font-size:18px;

color:#e5e7eb;

margin:25px 0;

}





.section-tag{

display:inline-block;

color:#F4A623;

font-weight:700;

letter-spacing:1px;

margin-bottom:15px;

}




/* ===============================
GALLERY SECTION
=============================== */

.gallery-section{

padding:90px 0;

background:#F8FAFC;

}

.gallery-img{

width:100%;

height:280px;

object-fit:cover;

border-radius:18px;

transition:.4s;

cursor:pointer;

box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.gallery-img:hover{

transform:scale(1.04);

box-shadow:0 18px 40px rgba(0,0,0,.18);

}




/* ===============================
VIDEO SECTION
=============================== */

.video-section{

padding:80px 0;
border-radius:20px;
background:#c2d6d6;

}

.video-container{

position:relative;

padding-bottom:56.25%;

height:0;

overflow:hidden;

border-radius:20px;

box-shadow:0 20px 50px rgba(0,0,0,.15);

}

.video-container iframe{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

border:none;

}






/* =====================================
   BUTTONS
===================================== */


.btn-primary{

background:#0B2D5C;

border:none;

padding:12px 30px;

border-radius:30px;

font-weight:600;

}



.btn-primary:hover{

background:#F4A623;

transform:translateY(-3px);

}



.btn-light{

border-radius:30px;

padding:12px 30px;

}








/* =====================================
   PAGE BANNER
===================================== */


.page-banner{


padding:150px 0 70px;


background:

linear-gradient(
90deg,
#0B2D5C,
#123E75
);


color:white;

text-align:center;


}



.page-banner h1{

color:white;

font-size:45px;

}



.page-banner p{

color:#e5e7eb;

}







/* =====================================
   SECTIONS
===================================== */


.about-section,
.store-section,
.pillars-section,
.smart-club-section{


padding:80px 0;


}





.about-section h2,
.smart-club-section h2{


font-size:38px;

margin-bottom:20px;

}







/* =====================================
   INFORMATION CARDS
===================================== */


.info-card{


background:white;

padding:35px 25px;

border-radius:20px;

height:100%;

box-shadow:

0 10px 35px rgba(0,0,0,0.08);


transition:0.35s;


text-align:center;


}



.info-card:hover{


transform:translateY(-10px);


box-shadow:

0 20px 40px rgba(0,0,0,0.15);


}



.info-card .icon{


font-size:45px;

margin-bottom:20px;


}



.info-card h3{


font-size:22px;

margin-bottom:15px;


}







/* =====================================
   PROGRAMME CARDS
===================================== */


.pillar-card{


background:white;

border-radius:20px;

overflow:hidden;

box-shadow:

0 10px 30px rgba(0,0,0,0.08);


height:100%;

transition:0.3s;


}



.pillar-card:hover{


transform:translateY(-10px);


}



.pillar-card img{


width:100%;

height:230px;

object-fit:cover;


}



.pillar-content{


padding:25px;


}



.pillar-content a{


color:#F4A623;

font-weight:600;


}









/* =====================================
   STORE PRODUCT CARD
===================================== */


.product-card{


background:white;

border-radius:20px;

overflow:hidden;

padding-bottom:25px;


box-shadow:

0 10px 30px rgba(0,0,0,0.08);


transition:0.3s;

text-align:center;


}



.product-card:hover{


transform:translateY(-10px);


}



.product-card img{


width:100%;

height:250px;

object-fit:cover;


}



.product-card h4{


padding:20px 15px 5px;


}





.product-card p{


padding:0 20px;


}









/* =====================================
   HELP SECTION
===================================== */


.help-section{


padding:70px 0;


background:#0B2D5C;


color:white;


}



.help-section h2{


color:white;

font-size:40px;


}



.help-section p{


color:#e5e7eb;


}









/* =====================================
   FORM DESIGN
===================================== */


.form-control{


border-radius:12px;

padding:12px;


border:1px solid #ddd;


}



.form-control:focus{


border-color:#F4A623;

box-shadow:none;


}









/* =====================================
   FOOTER
===================================== */


.footer{


background:#071A36;

padding:50px 0;

color:white;


}



.footer h3{


color:white;


}



.footer p{


color:#cbd5e1;


}



.footer hr{


border-color:#334155;


}









/* =====================================
   ANIMATION
===================================== */


@keyframes fadeUp{


from{

opacity:0;

transform:translateY(30px);

}


to{

opacity:1;

transform:translateY(0);

}


}



.hero,
.info-card,
.product-card,
.pillar-card{


animation:fadeUp 0.8s ease;


}








/* =====================================
   MOBILE RESPONSIVE
===================================== */


@media(max-width:768px){


.hero h1{

font-size:38px;

}


.page-banner h1{

font-size:35px;

}


.about-section h2,
.smart-club-section h2{

font-size:30px;

}


.navbar-nav{

background:white;

padding:20px;

border-radius:15px;

}


}




/* ===============================
FOOTER
=============================== */

.footer{

background:#071A36;

padding:70px 0 30px;

color:white;

}

.footer h4,
.footer h5{

color:white;

margin-bottom:20px;

}

.footer p{

color:#CBD5E1;

}

.footer ul{

padding:0;

}

.footer ul li{

list-style:none;

margin-bottom:10px;

}

.footer a{

color:#CBD5E1;

transition:.3s;

}

.footer a:hover{

color:#F4A623;

padding-left:5px;

}

.footer hr{

margin:35px 0;

border-color:#334155;

}




/* ==========================
   TEAM SECTION
========================== */

.team-section{

padding:80px 0;

background:#F8FAFC;

}

.team-card{

background:#fff;

border-radius:20px;

padding:30px;

text-align:center;

box-shadow:0 10px 30px rgba(0,0,0,.08);

transition:.3s;

height:100%;

}

.team-card:hover{

transform:translateY(-10px);

}

.team-card img{

width:170px;

height:170px;

border-radius:50%;

object-fit:cover;

object-position: top;

border:5px solid #F4A623;

margin-bottom:20px;

}

.team-card h4{

margin-bottom:8px;

color:#0B2D5C;

}

.designation{

color:#F4A623;

font-weight:600;

margin-bottom:15px;

}




<!-- Required Album Hover Styles -->
<style>
    .gallery-album-item {
        height: 250px; /* Fixed height for uniformity */
    }
    .gallery-album-item img {
        height: 100%;
        object-fit: cover;
        transition: transform 0.4s ease;
    }
    .album-overlay {
        background: rgba(0, 0, 0, 0.5);
        top: 0;
        left: 0;
        opacity: 0;
        transition: opacity 0.3s ease;
    }
    .gallery-album-item:hover img {
        transform: scale(1.08);
    }
    .gallery-album-item:hover .album-overlay {
        opacity: 1;
    }
</style>