/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:"Segoe UI",sans-serif;
}

html,body{
height:100%;
scroll-behavior:smooth;
overflow-y:auto;
}

body{
background:#0e0e1a;
color:white;
}


/* NAVBAR */

.navbar{
position:fixed;
top:0;
width:100%;

display:flex;
justify-content:space-between;
align-items:center;

padding:18px 60px;

background:rgba(20,20,40,0.6);
backdrop-filter:blur(14px);

border-bottom:1px solid rgba(255,255,255,0.1);
z-index:999;
}

.logo{
font-size:22px;
font-weight:600;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}


/* MENU */

.menu{
display:flex;
list-style:none;
gap:30px;
}

.menu li{
position:relative;
padding-bottom:10px;
}

.menu a{
display:inline-block;
text-decoration:none;
white-space:nowrap;
color:white;

padding:10px 18px;
border-radius:30px;

font-weight:500;
transition:0.35s;
}

/* MENU HOVER */

.menu a:hover{
background:linear-gradient(45deg,#7f5cff,#a85bff);

box-shadow:
0 0 10px rgba(160,120,255,0.7),
0 0 20px rgba(160,120,255,0.5);

transform:translateY(-2px);
}


/* DROPDOWN */

.dropdown-menu{
display:none;

position:absolute;
top:100%;
left:0;

background:#1b1b33;

border-radius:12px;
min-width:220px;

box-shadow:0 10px 30px rgba(0,0,0,0.4);

overflow:hidden;
padding:8px 0;
}

.dropdown-menu li a{
display:block;
padding:12px 18px;
color:#ddd;
white-space:nowrap;
}

.dropdown:hover .dropdown-menu{
display:block;
animation:dropdownFade 0.25s ease;
}

@keyframes dropdownFade{
from{opacity:0; transform:translateY(-8px);}
to{opacity:1; transform:translateY(0);}
}


/* SECTION STRUCTURE */

section{
padding:120px 10%;
text-align:center;
}
.page-content{
    flex:1;
}

/* HERO SECTION */

.hero{

min-height:100vh;

display:flex;
flex-direction:column;
justify-content:center;
align-items:center;

text-align:center;

/* background image + overlay */

background:
linear-gradient(
rgba(10,10,30,0.75),
rgba(10,10,30,0.85)
),
url("../img/bg.png");

background-size:cover;
background-position:center;

position:relative;
overflow:hidden;

}
.hero::before{

content:"";

position:absolute;
top:0;
left:0;

width:100%;
height:100%;

background:url("../images/hands.jpg");
background-size:cover;
background-position:center;

filter:blur(6px);
opacity:0.6;

z-index:-1;

}
.hero h1{
font-size:44px;
font-weight:500;

background:linear-gradient(45deg,#ffffff,#b8aaff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;

margin-bottom:18px;
}

.hero p{
font-size:20px;
opacity:0.85;
margin-bottom:40px;
}


/* BUTTONS */

.hero-buttons{
display:flex;
gap:30px;
}

.btn{
padding:18px 45px;

font-size:18px;
font-weight:600;

border-radius:40px;
text-decoration:none;

transition:0.35s;
position:relative;
overflow:hidden;
}

.join{
background:linear-gradient(45deg,#8a5cff,#c178ff);
color:white;

box-shadow:0 0 20px rgba(150,100,255,0.5);
}

.donate{
background:linear-gradient(45deg,#ff5fd2,#ff8ac9);
color:white;

box-shadow:0 0 20px rgba(255,120,200,0.5);
}

.btn:hover{
transform:translateY(-4px) scale(1.05);

box-shadow:
0 10px 40px rgba(255,255,255,0.25),
0 0 30px rgba(200,120,255,0.6);
}

.btn::after{
content:"";

position:absolute;

width:0;
height:0;

top:50%;
left:50%;

background:rgba(255,255,255,0.4);

border-radius:50%;

transform:translate(-50%,-50%);
transition:0.5s;
}

.btn:hover::after{
width:300px;
height:300px;
opacity:0;
}


/* ABOUT */

.about-preview p{
max-width:800px;
margin-top:20px;

opacity:0.85;
line-height:1.8;
}

.section-btn{
display:inline-block;
margin-top:30px;

padding:14px 35px;

border-radius:40px;

text-decoration:none;
font-weight:600;

background:linear-gradient(45deg,#8a5cff,#c178ff);
color:white;

transition:0.3s;

box-shadow:0 0 20px rgba(150,100,255,0.5);
}

.section-btn:hover{
transform:translateY(-3px);

box-shadow:
0 10px 40px rgba(255,255,255,0.25),
0 0 30px rgba(200,120,255,0.6);
}

/* IMPACT SECTION */

.impact-section{

position:relative;

padding:140px 10%;

text-align:center;

background:
linear-gradient(
rgba(10,10,30,0.9),
rgba(10,10,30,0.95)
),
url("../img/bg.png");

background-size:cover;
background-position:center;

overflow:hidden;

}


/* BACKGROUND GLOW */

.impact-section::before{

content:"";

position:absolute;

width:600px;
height:600px;

background:radial-gradient(
circle,
rgba(120,100,255,0.35),
transparent 70%
);

filter:blur(120px);

top:50%;
left:50%;

transform:translate(-50%,-50%);

animation:impactGlow 10s infinite alternate;

z-index:0;

}

@keyframes impactGlow{

from{
transform:translate(-50%,-60%);
}

to{
transform:translate(-50%,-40%);
}

}


/* TITLE */

.impact-section h2{

font-size:40px;

margin-bottom:50px;

background:linear-gradient(45deg,#b66cff,#7f8cff);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

position:relative;
z-index:1;

}


/* GRID */

.impact-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:40px;

position:relative;
z-index:1;

}


/* CARD */

.impact-card{

background:rgba(30,30,60,0.6);

backdrop-filter:blur(14px);

border-radius:20px;

padding:40px 30px;

transition:0.35s;

box-shadow:
0 10px 30px rgba(0,0,0,0.5),
inset 0 1px 1px rgba(255,255,255,0.05);

position:relative;

overflow:hidden;

}


/* CARD SHINE */

.impact-card::before{

content:"";

position:absolute;

top:-50%;
left:-50%;

width:200%;
height:200%;

background:linear-gradient(
120deg,
transparent,
rgba(255,255,255,0.12),
transparent
);

transform:rotate(25deg);

opacity:0;

transition:0.6s;

}

.impact-card:hover::before{

opacity:1;
left:100%;

}


/* HOVER EFFECT */

.impact-card:hover{

transform:translateY(-12px) scale(1.03);

box-shadow:
0 25px 70px rgba(0,0,0,0.8),
0 0 25px rgba(120,120,255,0.35);

}


/* TITLE */

.impact-card h3{

font-size:22px;

margin-bottom:15px;

}


/* TEXT */

.impact-card p{

opacity:0.85;

line-height:1.6;

font-size:15px;

}
/* SERVICES PAGE */

.services-page{

position:relative;

padding:140px 10%;

text-align:center;

background:
linear-gradient(
rgba(10,10,30,0.9),
rgba(10,10,30,0.95)
),
url("../img/bg.png");

background-size:cover;
background-position:center;

overflow:hidden;

}


/* ANIMATED GLOW BACKGROUND */

.services-page::before{

content:"";

position:absolute;

width:700px;
height:700px;

background:radial-gradient(
circle,
rgba(120,120,255,0.35),
transparent 70%
);

filter:blur(140px);

top:50%;
left:50%;

transform:translate(-50%,-50%);

animation:servicesGlow 10s infinite alternate;

z-index:0;

}

@keyframes servicesGlow{

from{
transform:translate(-50%,-60%);
}

to{
transform:translate(-50%,-40%);
}

}


/* SERVICES CONTAINER */

.services-list{

margin-top:80px;

display:flex;

flex-direction:column;

gap:80px;

position:relative;
z-index:1;

}


/* SERVICE ITEM */

.service-item{

display:grid;

grid-template-columns:320px 1fr;

gap:50px;

align-items:center;

background:rgba(30,30,60,0.65);

backdrop-filter:blur(16px);

padding:40px;

border-radius:20px;

box-shadow:
0 15px 40px rgba(0,0,0,0.6),
inset 0 1px 1px rgba(255,255,255,0.05);

transition:0.4s;

position:relative;

overflow:hidden;

}


/* SHINE EFFECT */

.service-item::before{

content:"";

position:absolute;

top:-50%;
left:-50%;

width:200%;
height:200%;

background:linear-gradient(
120deg,
transparent,
rgba(255,255,255,0.12),
transparent
);

transform:rotate(25deg);

opacity:0;

transition:0.7s;

}

.service-item:hover::before{

opacity:1;
left:100%;

}


/* HOVER EFFECT */

.service-item:hover{

transform:translateY(-12px) scale(1.02);

box-shadow:
0 25px 70px rgba(0,0,0,0.8),
0 0 30px rgba(120,120,255,0.35);

}


/* IMAGE STYLE */

.service-photo{

position:relative;

border-radius:16px;

overflow:hidden;

}

.service-photo img{

width:100%;

height:220px;

object-fit:cover;

border-radius:16px;

transition:0.4s;

}


/* IMAGE HOVER */

.service-item:hover img{

transform:scale(1.08);

}


/* PHOTO BORDER GLOW */

.service-photo::after{

content:"";

position:absolute;

inset:0;

border-radius:16px;

box-shadow:inset 0 0 30px rgba(120,120,255,0.25);

pointer-events:none;

}


/* CONTENT */

.service-content{

text-align:left;

}


/* TITLE */

.service-content h3{

font-size:26px;

margin-bottom:12px;

background:linear-gradient(45deg,#b66cff,#7f8cff);

-webkit-background-clip:text;
-webkit-text-fill-color:transparent;

}


/* DESCRIPTION */

.service-content p{

font-size:16px;

line-height:1.7;

opacity:0.85;

}


/* RESPONSIVE */

@media (max-width:900px){

.service-item{

grid-template-columns:1fr;

text-align:center;

}

.service-content{

text-align:center;

}

.service-photo img{

height:200px;

}

}
/* STATS */

.stats-section{
background:rgba(20,20,40,0.6);
}

.stats-grid{
display:grid;

grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:40px;
}

.stat h3{
font-size:40px;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.stat p{
margin-top:8px;
opacity:0.8;
}
/* BOARD OF DIRECTORS */

.directors-page{
padding:140px 10%;
text-align:center;
}

.page-title{
font-size:48px;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;

margin-bottom:25px;
}

.club-info{
max-width:900px;

margin:auto;

line-height:1.8;
font-size:18px;

opacity:0.85;
margin-bottom:70px;
}

.directors-grid{
display:flex;
justify-content:center;
align-items:flex-start;
gap:40px;
flex-wrap:wrap;
margin-top:40px;
}

.director-card{
background:rgba(30,30,60,0.7);

backdrop-filter:blur(12px);

border-radius:18px;
padding:25px;

transition:0.35s;

box-shadow:0 10px 30px rgba(0,0,0,0.4);
}
.director-card{
width:260px;
}
.director-card:hover{
transform:translateY(-10px) scale(1.02);

box-shadow:0 25px 60px rgba(0,0,0,0.6);
}

.image-box{
overflow:hidden;
border-radius:14px;
margin-bottom:18px;
}

.image-box img{
width:100%;
height:260px;

object-fit:cover;

transition:0.4s;
}

.director-card:hover img{
transform:scale(1.08);
}

.director-card h3{
font-size:22px;
margin-bottom:6px;
}

.director-card span{
font-size:16px;
opacity:0.7;
}


/* CONTACT */

.contact-page{
padding:160px 10% 120px;
text-align:center;
}

.contact-title{
font-size:48px;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;

margin-bottom:15px;
}

.contact-subtext{
max-width:700px;

margin:auto;

opacity:0.85;
margin-bottom:60px;

line-height:1.7;
}

.contact-container{
display:grid;

grid-template-columns:1fr 1fr;
gap:50px;

align-items:start;
}

.contact-info,
.contact-form{
background:rgba(30,30,60,0.7);

backdrop-filter:blur(12px);

border-radius:18px;
padding:35px;

box-shadow:0 10px 30px rgba(0,0,0,0.4);
}

.contact-info{
text-align:left;
}

.contact-info h2,
.contact-form h2{
margin-bottom:20px;
}

.contact-info p{
margin-bottom:12px;
opacity:0.85;
}

.contact-form form{
display:flex;
flex-direction:column;
gap:15px;
}

.contact-form input,
.contact-form textarea{
padding:14px;

border:none;
border-radius:10px;

background:#14142a;
color:white;

font-size:15px;
outline:none;
}

.contact-btn{
margin-top:10px;

padding:16px;

border:none;
border-radius:40px;

font-size:16px;
font-weight:600;

background:linear-gradient(45deg,#8a5cff,#c178ff);

color:white;

cursor:pointer;

transition:0.35s;

box-shadow:0 0 20px rgba(150,100,255,0.5);
}

.contact-btn:hover{
transform:translateY(-3px) scale(1.05);

box-shadow:
0 10px 40px rgba(255,255,255,0.25),
0 0 30px rgba(200,120,255,0.6);
}

.stats-cta-section{
text-align:center;
}

.stats-grid{
display:flex;
justify-content:center;
gap:80px;
flex-wrap:wrap;
margin-top:40px;
}

.stat h3{
font-size:46px;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.stat p{
margin-top:5px;
opacity:0.8;
}

.impact-cta{
margin-top:80px;
padding-top:40px;
border-top:1px solid rgba(255,255,255,0.1);
}

.impact-cta h3{
font-size:28px;
margin-bottom:10px;
}

.impact-cta p{
opacity:0.85;
margin-bottom:30px;
}
.impact-cta{
text-align:center;
display:flex;
flex-direction:column;
align-items:center;
}

/* ABOUT CLUB PAGE */

.about-club-page{

padding:140px 10%;

text-align:center;

}


/* CLUB PHOTO */

.club-photo{

max-width:900px;

margin:40px auto;

}


.club-photo img{

width:100%;

border-radius:18px;

box-shadow:0 20px 60px rgba(0,0,0,0.6);

}


/* DESCRIPTION */

.club-description{

max-width:850px;

margin:40px auto;

line-height:1.8;

opacity:0.9;

}


/* SUBTITLE */

.sub-title{

font-size:28px;

margin-top:50px;

margin-bottom:30px;

}


/* GUIDING LIONS */

.guiding-lions{

display:flex;

justify-content:center;

gap:40px;

flex-wrap:wrap;

}


/* CARD */

.lion-card{

background:rgba(30,30,60,0.7);

backdrop-filter:blur(12px);

border-radius:18px;

padding:25px;

width:220px;

transition:0.3s;

box-shadow:0 10px 30px rgba(0,0,0,0.4);

}


.lion-card:hover{

transform:translateY(-8px);

box-shadow:0 20px 50px rgba(0,0,0,0.6);

}


.lion-card img{

width:100%;

height:220px;

object-fit:cover;

border-radius:12px;

margin-bottom:12px;

}


.lion-card span{

opacity:0.7;

font-size:14px;

}
/* ABOUT CLUB PAGE */

.about-club-page{

padding:140px 10%;

text-align:center;

}


/* CLUB PHOTO */

.club-photo{

max-width:900px;

margin:40px auto;

}

.club-photo img{

width:100%;

border-radius:18px;

box-shadow:0 20px 60px rgba(0,0,0,0.6);

}


/* CLUB DESCRIPTION */

.club-description{

max-width:850px;

margin:40px auto;

line-height:1.8;

opacity:0.9;

}


/* MEMBERS GRID */

.members-grid{

display:grid;

grid-template-columns:repeat(4, 1fr);

gap:40px;

margin-top:50px;

width:100%;

}

/* MEMBER CARD */

.member-card{

width:100%;

background:rgba(30,30,60,0.7);

backdrop-filter:blur(12px);

border-radius:18px;

padding:25px;

transition:0.3s;

box-shadow:0 10px 30px rgba(0,0,0,0.4);

}

.member-card:hover{

transform:translateY(-8px);

box-shadow:0 20px 50px rgba(0,0,0,0.6);

}

.member-card img{

width:100%;

height:220px;

object-fit:cover;

border-radius:12px;

margin-bottom:12px;

}

.member-card span{

opacity:0.7;

font-size:14px;

}

/* DISTRICT PAGE */

.district-page{

padding:140px 10%;
text-align:center;

}

.district-intro{

max-width:850px;
margin:30px auto;
line-height:1.8;
opacity:0.9;

}


/* DISTRICT GOVERNOR */

.district-governor{

display:flex;
justify-content:center;
align-items:center;
gap:50px;
flex-wrap:wrap;

margin-top:60px;

}

.governor-photo img{

width:280px;
height:320px;
object-fit:cover;

border-radius:18px;

box-shadow:0 20px 60px rgba(0,0,0,0.6);

}

.governor-info{

max-width:450px;
text-align:left;

}

.governor-info span{

display:block;
margin-bottom:10px;
opacity:0.8;

}

/* SERVICE AREAS SECTION */

.district-services{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:35px;

max-width:1100px;
margin:60px auto;

padding:20px;

}


/* SERVICE CARD */

.service-card{

display:block;

background:linear-gradient(145deg,#1c1c35,#14142a);

border-radius:18px;

padding:35px 25px;

text-align:center;

text-decoration:none;
color:white;

position:relative;

overflow:hidden;

transition:all 0.35s ease;

box-shadow:
0 10px 25px rgba(0,0,0,0.45),
inset 0 1px 1px rgba(255,255,255,0.05);

}


/* GLOSS EFFECT */

.service-card::before{

content:"";

position:absolute;

top:-50%;
left:-50%;

width:200%;
height:200%;

background:linear-gradient(
120deg,
transparent,
rgba(255,255,255,0.12),
transparent
);

transform:rotate(25deg);

opacity:0;

transition:0.6s;

}


/* HOVER GLOSS */

.service-card:hover::before{

opacity:1;
left:100%;

}


/* HOVER LIFT */

.service-card:hover{

transform:translateY(-10px) scale(1.03);

box-shadow:
0 20px 50px rgba(0,0,0,0.7),
0 0 25px rgba(120,120,255,0.35);

}


/* ICON STYLE */

.service-icon{

width:70px;
height:70px;

margin:0 auto 20px;

display:flex;
align-items:center;
justify-content:center;

font-size:30px;

border-radius:50%;

background:linear-gradient(145deg,#2b2b55,#1a1a38);

box-shadow:
0 6px 20px rgba(0,0,0,0.5),
inset 0 1px 2px rgba(255,255,255,0.08);

}


/* TITLE */

.service-card h3{

font-size:20px;

margin-bottom:12px;

font-weight:600;

letter-spacing:0.3px;

}


/* DESCRIPTION */

.service-card p{

font-size:14px;

opacity:0.75;

line-height:1.5;

max-width:220px;

margin:auto;

}
.district-header{

display:flex;
align-items:center;
justify-content:center;

gap:20px;

margin-bottom:25px;

text-align:center;

}

.district-logo{

height:120px;
width:auto;

display:block;

}
/* GLOBAL LIONS */

.lions-global{

margin-top:80px;

max-width:800px;

margin-left:auto;
margin-right:auto;

line-height:1.8;
opacity:0.9;

}

.directors-grid{
display:flex;
justify-content:center;
align-items:flex-start;
gap:40px;
flex-wrap:wrap;
margin-top:40px;
}
/* TEAM / LEADERSHIP */

.team-section{
padding:140px 10%;
text-align:center;
}

.team-grid{
display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:40px;

margin-top:60px;
}

.team-card{

background:rgba(30,30,60,0.7);

backdrop-filter:blur(12px);

border-radius:18px;

padding:25px;

transition:0.35s;

box-shadow:0 10px 30px rgba(0,0,0,0.4);

}

.team-card:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(0,0,0,0.6);

}

.team-card img{

width:100%;

height:260px;

object-fit:cover;

border-radius:12px;

margin-bottom:15px;

}

.team-card h3{

font-size:22px;

margin-bottom:5px;

}

.team-card p{

opacity:0.75;

font-size:15px;

}
.team-section{
display:block !important;
}
.team-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:40px;
margin-top:60px;
}
/* ABOUT PREVIEW SECTION */

.about-preview{

position:relative;

padding:140px 10%;

text-align:center;

background:
linear-gradient(
rgba(10,10,30,0.85),
rgba(10,10,30,0.9)
),
url("../img/bg.png");

background-size:cover;
background-position:center;

overflow:hidden;

}


/* GLOW EFFECT */

.about-preview::before{

content:"";

position:absolute;

width:500px;
height:500px;

background:radial-gradient(
circle,
rgba(130,100,255,0.35),
transparent 70%
);

filter:blur(120px);

top:50%;
left:50%;

transform:translate(-50%,-50%);

animation:glowMove 8s infinite alternate;

z-index:0;

}

@keyframes glowMove{

from{
transform:translate(-50%,-60%);
}

to{
transform:translate(-50%,-40%);
}

}


/* TITLE */

.about-preview h2{

font-size:42px;

margin-bottom:25px;

background:linear-gradient(45deg,#b66cff,#7f8cff);

-webkit-background-clip:text;
-webkit-text-fill-color:transparent;

position:relative;
z-index:1;

}


/* TEXT CARD */

.about-preview p{

max-width:800px;

margin:25px auto;

line-height:1.8;

opacity:0.9;

font-size:17px;

background:rgba(30,30,60,0.55);

backdrop-filter:blur(12px);

padding:35px;

border-radius:18px;

box-shadow:0 15px 40px rgba(0,0,0,0.6);

position:relative;
z-index:1;

}


/* BUTTON */

.section-btn{

display:inline-block;

margin-top:30px;

padding:16px 40px;

border-radius:40px;

text-decoration:none;

font-weight:600;

background:linear-gradient(45deg,#8a5cff,#c178ff);

color:white;

transition:0.35s;

box-shadow:0 0 20px rgba(150,100,255,0.5);

position:relative;
z-index:1;

}

.section-btn:hover{

transform:translateY(-5px) scale(1.05);

box-shadow:
0 15px 45px rgba(255,255,255,0.25),
0 0 35px rgba(200,120,255,0.7);

}
.logo{
display:flex;
align-items:center;
gap:10px;

font-size:22px;
font-weight:600;

background:linear-gradient(45deg,#b66cff,#7f8cff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.logo img{
height:35px;
width:auto;
}
/* MEMBERS PAGE */

.members-page{
padding:140px 10%;
text-align:center;
}

/* description */

.club-info{
max-width:850px;
margin:20px auto 60px auto;
line-height:1.7;
opacity:0.85;
}

/* GRID */

.members-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:35px;
}

/* MEMBER CARD */

.member{

background:rgba(30,30,60,0.7);
backdrop-filter:blur(12px);

border-radius:18px;

padding:20px;

transition:0.35s;

box-shadow:0 10px 30px rgba(0,0,0,0.4);
}

/* hover effect */

.member:hover{
transform:translateY(-8px);

box-shadow:0 25px 60px rgba(0,0,0,0.6);
}

/* member name */

.member h3{
font-size:18px;
margin-bottom:4px;
}
.member img{
width:100%;
height:180px;

object-fit:cover;

border-radius:12px;

margin-bottom:12px;
}
/* member id */

.member-id{
font-size:14px;
opacity:0.7;
}


/* ACTIVITIES PAGE */

.activities-page{

padding:140px 10%;

text-align:center;

background:
linear-gradient(
rgba(10,10,30,0.9),
rgba(10,10,30,0.95)
),
url("../img/bg.png");

background-size:cover;
background-position:center;

}


/* LIST */

.activities-list{

margin-top:80px;

display:flex;

flex-direction:column;

gap:90px;

}


/* ACTIVITY BLOCK */

.activity-block{

display:grid;

grid-template-columns:55% 45%;

gap:50px;

align-items:center;

background:rgba(30,30,60,0.65);

backdrop-filter:blur(14px);

padding:40px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,0.6);

transition:0.35s;

}

.activity-block:hover{

transform:translateY(-8px);

box-shadow:0 25px 70px rgba(0,0,0,0.8);

}


/* GALLERY */

.activity-gallery{

position:relative;

overflow:hidden;

border-radius:16px;

}


/* IMAGE TRACK */

.gallery-track{

display:flex;

overflow-x:auto;

scroll-behavior:smooth;

scrollbar-width:none;

}

.gallery-track::-webkit-scrollbar{
display:none;
}


/* IMAGE */

.gallery-track img{

width:100%;

min-width:100%;

height:420px;

object-fit:cover;

border-radius:16px;

transition:0.3s;

}

.gallery-track img:hover{

transform:scale(1.04);

}


/* ARROW BUTTON */

.gallery-btn{

position:absolute;

top:50%;

transform:translateY(-50%);

width:44px;
height:44px;

border:none;

border-radius:50%;

background:rgba(20,20,40,0.8);

color:white;

font-size:22px;

cursor:pointer;

display:flex;
align-items:center;
justify-content:center;

box-shadow:0 8px 20px rgba(0,0,0,0.6);

transition:0.25s;

}

.gallery-btn:hover{

background:linear-gradient(45deg,#7f5cff,#a85bff);

transform:translateY(-50%) scale(1.1);

}

.gallery-btn.left{
left:15px;
}

.gallery-btn.right{
right:15px;
}


/* CONTENT */

.activity-content{

text-align:left;

}


/* TITLE */

.activity-content h3{

font-size:30px;

margin-bottom:18px;

background:linear-gradient(45deg,#b66cff,#7f8cff);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}


/* META BADGE */

.activity-meta{

display:flex;

gap:15px;

margin-bottom:15px;

}

.activity-meta span{

display:inline-flex;

align-items:center;

gap:8px;

background:rgba(255,255,255,0.07);

padding:8px 14px;

border-radius:10px;

font-size:14px;

letter-spacing:0.4px;

}


/* LOCATION ICON */

.activity-meta span::before{

content:"📍";

font-size:14px;

}


/* DESCRIPTION */

.activity-content p{

line-height:1.7;

opacity:0.85;

font-size:16px;

max-width:520px;

}


/* RESPONSIVE */

@media (max-width:900px){

.activity-block{

grid-template-columns:1fr;

}

.activity-content{

text-align:center;

}

.activity-content p{

margin:auto;

}

.gallery-track img{

height:300px;

}

}
/* AWARDS PAGE */

.awards-page{
padding:140px 10%;
text-align:center;
}


/* AWARDS GRID */

.awards-page .team-grid{
margin-top:60px;
}


/* AWARD TILE */

.awards-page .team-card{

background:rgba(35,35,70,0.75);

backdrop-filter:blur(14px);

border-radius:18px;

padding:25px;

transition:0.35s;

box-shadow:0 10px 35px rgba(0,0,0,0.5);

position:relative;

overflow:hidden;

}


/* GOLD GLOW BORDER */

.awards-page .team-card::before{

content:"";

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

border-radius:18px;

background:linear-gradient(
120deg,
transparent,
rgba(255,215,0,0.25),
transparent
);

opacity:0;

transition:0.4s;

}


/* HOVER EFFECT */

.awards-page .team-card:hover{

transform:translateY(-10px) scale(1.03);

box-shadow:
0 25px 60px rgba(0,0,0,0.8),
0 0 30px rgba(255,215,0,0.25);

}

.awards-page .team-card:hover::before{
opacity:1;
}


/* IMAGE */

.awards-page .team-card img{

width:100%;

height:240px;

object-fit:cover;

border-radius:12px;

margin-bottom:14px;

transition:0.4s;

}

.awards-page .team-card:hover img{
transform:scale(1.05);
}


/* TITLE */

.awards-page .team-card h3{

font-size:22px;

margin-bottom:8px;

background:linear-gradient(45deg,#ffd700,#ffb400);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}


/* RECIPIENT */

.award-recipient{

font-weight:600;

margin-bottom:6px;

opacity:0.95;

}


/* DESCRIPTION */

.awards-page .team-card p{

opacity:0.85;

line-height:1.6;

font-size:14px;

}
/* GALLERY PAGE */

.gallery-page{

padding:140px 10%;

text-align:center;

}


/* CONTAINER */

.gallery-container{

position:relative;

margin-top:60px;

background:rgba(30,30,60,0.7);

border-radius:20px;

padding:30px;

backdrop-filter:blur(12px);

box-shadow:0 15px 50px rgba(0,0,0,0.6);

}


/* SLIDER */

.gallery-slider{

display:flex;

overflow-x:auto;

scroll-behavior:smooth;

scrollbar-width:none;

gap:20px;

}

.gallery-slider::-webkit-scrollbar{
display:none;
}


/* IMAGES */

.gallery-slider img{

min-width:100%;

height:520px;

object-fit:cover;

border-radius:15px;

transition:0.4s;

}

.gallery-slider img:hover{

transform:scale(1.02);

}


/* ARROWS */

.gallery-arrow{

position:absolute;

top:50%;

transform:translateY(-50%);

background:rgba(0,0,0,0.6);

border:none;

color:white;

font-size:28px;

width:55px;

height:55px;

border-radius:50%;

cursor:pointer;

transition:0.3s;

z-index:10;

}

.gallery-arrow:hover{

background:linear-gradient(45deg,#8a5cff,#c178ff);

}


.gallery-arrow.left{

left:20px;

}

.gallery-arrow.right{

right:20px;

}


/* MOBILE */

@media (max-width:800px){

.gallery-slider img{

height:320px;

}

}
/* ===== MOBILE NAVBAR FIX ===== */

@media (max-width:768px){

.navbar{
position:relative !important;
padding:10px 10px !important;
flex-direction:column;
align-items:center;
gap:5px;
}


/* logo smaller */

.logo{
font-size:16px !important;
text-align:center;
}

.logo img{
height:40px !important;
}


/* menu layout */

.menu{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:8px;
}

.menu li{
padding:0;
}

.menu a{
font-size:14px;
padding:6px 10px;
}


/* remove hover dropdown for mobile */

.dropdown:hover .dropdown-menu{
display:none !important;
}


/* dropdown click fix */

.dropdown-menu{
position:static !important;
display:block;
background:transparent;
box-shadow:none;
padding:0;
}

.dropdown-menu li a{
padding:6px;
font-size:13px;
}


/* hero spacing fix */

.hero{
padding-top:40px !important;
min-height:auto;
}

.hero h1{
font-size:28px !important;
line-height:1.3;
}

.hero p{
font-size:14px;
}

.hero-buttons{
flex-direction:column;
gap:15px;
}

.btn{
padding:12px 20px;
font-size:14px;
}

}
@media (max-width:768px){
    /* ================= ABOUT SECTION MOBILE ================= */

.about-preview{
padding:80px 20px;
text-align:center;
}

.about-preview h2{
font-size:26px;
margin-bottom:10px;
}

.about-preview p{
max-width:100%;
font-size:15px;
line-height:1.7;
margin-top:15px;
}

.section-btn{
margin-top:20px;
padding:12px 26px;
font-size:14px;
}
 
}
@media (max-width:768px){
.about-preview img,
.about-club img{
width:100%;
height:auto;
object-fit:contain;
border-radius:12px;
}
.member img{
width:80%;
height:80px;
height:auto;
object-fit:contain;
display:block;
margin:15px auto;
border-radius:6px;
}
.members-grid .member img{
width:60px !important;
height:60px !important;
object-fit:contain !important;
display:block;
margin:10px auto !important;
}

}
/* ===== MOBILE MEMBER FIX ===== */

@media (max-width:768px){

.members-grid{
grid-template-columns:1fr !important;
gap:20px;
}

.member{
max-width:320px;
margin:auto;
padding:20px;
}

.member img{
width:90px !important;
height:90px !important;
object-fit:contain !important;
display:block;
margin:10px auto !important;
}

}
/* ================= CONTACT PAGE MOBILE ================= */

@media (max-width:768px){

.contact-page{
padding:120px 6%;
}

.contact-container{
grid-template-columns:1fr;
gap:30px;
}

.contact-info,
.contact-form{
padding:25px;
}

.contact-title{
font-size:32px;
}

.contact-subtext{
font-size:15px;
}

.contact-form input,
.contact-form textarea{
font-size:14px;
}

.contact-btn{
width:100%;
padding:14px;
}

}
/* FOOTER */

footer{

margin-top:80px;

padding:30px 20px;

display:flex;
justify-content:center;

}

.footer-tile{

background:rgba(30,30,60,0.75);

backdrop-filter:blur(14px);

border-radius:18px;

padding:20px 30px;

text-align:center;

max-width:900px;
width:90%;

box-shadow:
0 10px 40px rgba(0,0,0,0.6),
inset 0 1px 1px rgba(255,255,255,0.05);

font-size:14px;

line-height:1.6;

opacity:0.9;

}
.site-logo{
width:100px;
height:100px;
object-fit:contain;
border-radius:50%;

background:white;
padding:3px;

box-shadow:0 0 12px rgba(180,150,255,0.6);
}
.navbar{
position:fixed;
top:0;
width:100%;

display:flex;
justify-content:space-between;
align-items:center;

padding:25px 60px;   /* increased */

background:rgba(20,20,40,0.6);
backdrop-filter:blur(14px);

border-bottom:1px solid rgba(255,255,255,0.1);
z-index:999;
}
.logo img{
width:70px;
height:70px;
object-fit:contain;
border-radius:50%;
margin-right:10px;
}
.district-card {
    display: flex;
    align-items: center;
    gap: 40px;
    background: #0f172a;
    padding: 30px;
    border-radius: 18px;
    margin-bottom: 35px;
    box-shadow: 0 0 15px rgba(0,0,0,0.5);
}

.district-card img {
    width: 230px;
    height: 270px;
    object-fit: cover;
    border-radius: 15px;
    border: 3px solid #1d4ed8;   /* blue border instead of yellow */
}

.district-info {
    flex: 1;
    text-align: left;
}

.district-info h3 {
    color: #ffffff;
    font-size: 24px;
    margin-bottom: 8px;
}

.district-info h4 {
    color: #fbbf24;   /* gold text */
    font-size: 18px;
    margin-bottom: 12px;
}

.district-info p {
    color: #cbd5e1;
    font-size: 15px;
    line-height: 1.7;
    max-width: 700px;
}
@media (max-width: 768px) {

    .district-card {
        flex-direction: column;
        text-align: center;
    }

    .district-card img {
        width: 220px;
        height: 220px;
    }

}
.vice-row {
    display: flex;
    gap: 40px;
    margin-top: 40px;
}

.vice-card {
    flex: 1;
    display: flex;
    gap: 25px;
    background: #0f172a;
    padding: 30px;
    border-radius: 18px;
    align-items: center;
    min-height: 320px;
}

.vice-card img {
    width: 220px;
    height: 260px;
    object-fit: cover;
    border-radius: 15px;
}

.vice-info {
    flex: 1;
    text-align: left;
}

.vice-info h3 {
    color: white;
    font-size: 20px;   /* bigger name */
    margin-bottom: 8px;
}

.vice-info h4 {
    color: #cbd5e1;
    font-size: 18px;
    margin-bottom: 10px;
}

.vice-info p {
    color: #cbd5e1;
    font-size: 16px;
    line-height: 1.6;
}
.status-message {
    width: 100%;
    max-width: 600px;
    margin: 20px auto;
    padding: 12px 18px;
    border-radius: 8px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
}

/* success */
.status-success {
    background: #16a34a;
    color: white;
}

/* error */
.status-error {
    background: #dc2626;
    color: white;
}
/* ===== VICE CARD MOBILE FIX ===== */

@media (max-width:768px){

.vice-card{
display:block !important;
width:90% !important;
max-width:320px !important;
margin:20px auto !important;
text-align:center !important;
height:auto !important;
}

.vice-card img{
width:100% !important;
height:auto !important;
display:block !important;
margin-bottom:10px;
}

.vice-info{
display:block !important;
width:100% !important;
text-align:center !important;
}

.vice-info h3{
font-size:18px;
}

.vice-info p{
font-size:14px;
line-height:1.4;
}

}
/* ===== MOBILE MENU FLICKER FIX ===== */

@media (max-width:768px){

/* stop hover dropdown */

.dropdown:hover .dropdown-menu{
display:none !important;
}

/* hide dropdown by default */

.dropdown-menu{
display:none !important;
position:static !important;
background:#1b1b33;
box-shadow:none;
border-radius:10px;
margin-top:5px;
}

/* show only when active */

.dropdown.active .dropdown-menu{
display:block !important;
}


/* navbar size fix */

.navbar{
position:relative !important;
flex-direction:column;
padding:10px;
}


/* menu wrap */

.menu{
flex-wrap:wrap;
justify-content:center;
gap:8px;
}

.menu a{
font-size:14px;
padding:6px 10px;
}


/* hero spacing */

.hero{
padding-top:50px !important;
}

.hero h1{
font-size:28px;
}

}