/* =========================================
HERO
========================================= */

.page-hero{

min-height:100vh;

position:relative;

display:flex;
align-items:center;
justify-content:center;

text-align:center;

padding:180px 20px 120px;

background:
linear-gradient(
rgba(0,0,0,0.72),
rgba(0,0,0,0.92)
),
url('../images/impact-bg.jpg') center/cover no-repeat;
}

.hero-content{

position:relative;

z-index:2;

max-width:950px;

margin:auto;
}

.hero-tag{

display:inline-block;

margin-bottom:25px;

font-size:13px;

font-weight:600;

letter-spacing:3px;

text-transform:uppercase;

color:var(--gold);
}

.hero-content h1{
margin-bottom:30px;
}

.hero-content p{

max-width:760px;

margin:auto;

margin-bottom:45px;
}

/* =========================================
VISION
========================================= */

.vision-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:60px;
}

.vision-card{

padding:45px 35px;
}

.vision-card h3{
margin-bottom:20px;
}

/* =========================================
OBJECTIVES
========================================= */

.objectives-section{
background:#0d0d0d;
}

.stats-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:60px;
}

.stat-card{

padding:50px 30px;

text-align:center;
}

.stat-card h3{

font-size:56px;

margin-bottom:15px;

color:var(--gold);
}

/* =========================================
SOCIAL IMPACT
========================================= */

.impact-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:60px;
}

.impact-box{

padding:45px 35px;
}

.impact-box h3{
margin-bottom:20px;
}

/* =========================================
STORIES
========================================= */

.stories-section{
background:#0f0f0f;
}

.stories-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:30px;

margin-top:60px;
}

.story-card{

height:500px;

position:relative;

overflow:hidden;

border-radius:18px;

background:
linear-gradient(
rgba(0,0,0,0.2),
rgba(0,0,0,0.92)
),
url('../images/story1.jpg') center/cover;
}

.story2{

background:
linear-gradient(
rgba(0,0,0,0.2),
rgba(0,0,0,0.92)
),
url('../images/story2.jpg') center/cover;
}

.story-overlay{

position:absolute;

inset:0;

padding:40px;

display:flex;

flex-direction:column;

justify-content:flex-end;
}

.story-overlay h3{
margin-bottom:20px;
}

/* =========================================
FUTURE
========================================= */

.future-section{
background:#111;
}

.future-box{

padding:70px 60px;

text-align:center;
}

.future-box span{

display:inline-block;

margin-bottom:20px;

font-size:13px;

font-weight:600;

letter-spacing:3px;

text-transform:uppercase;

color:var(--gold);
}

.future-box h2{

max-width:900px;

margin:auto;

margin-bottom:30px;
}

.future-box p{

max-width:800px;

margin:auto;
}

/* =========================================
CTA
========================================= */

.impact-cta{

background:
linear-gradient(
rgba(0,0,0,0.82),
rgba(0,0,0,0.92)
),
url('../images/cta-bg.jpg') center/cover;
}

.cta-box{

max-width:850px;

margin:auto;

text-align:center;
}

.cta-box p{

margin-top:20px;

margin-bottom:40px;
}

/* =========================================
FOOTER
========================================= */

footer{

padding:30px;

text-align:center;

background:black;

border-top:1px solid rgba(255,255,255,0.05);
}

/* =========================================
RESPONSIVE
========================================= */

@media(max-width:1100px){

.vision-grid,
.impact-grid,
.stats-grid{

grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.page-hero{

padding:160px 20px 100px;
}

.vision-grid,
.impact-grid,
.stats-grid,
.stories-grid{

grid-template-columns:1fr;
}

.future-box{

padding:50px 30px;
}

.story-card{
height:420px;
}

}

@media(max-width:480px){

.hero-content h1{
font-size:34px;
}

.hero-content p{
font-size:15px;
}

.future-box{
padding:40px 25px;
}

.stat-card h3{
font-size:42px;
}

}