/* HERO */

.campus-hero{
padding:180px 0 120px;
background:
linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.45)),
url("../img/banners/campus.png");
background-size:cover;
background-position:center;
}


.campus-hero .hero-eyebrow{
color:#ddd;
}

.campus-hero .title{
color:#fff;
}

.campus-hero .hero-sub{
color:#e5e5e5;
}

.hero-eyebrow{
font-size:13px;
letter-spacing:3px;
text-transform:uppercase;
color:#777;
display:inline-block;
margin-bottom:20px;
}

.title{
font-size:64px;
font-weight:800;
line-height:1.1;
color:#1a1a1a;
margin-bottom:22px;
max-width:900px;
}

.title span{
background:linear-gradient(90deg,#ffc107,#f57c00);
-webkit-background-clip:text;
color:transparent;
}

.hero-sub{
font-size:19px;
line-height:1.8;
max-width:680px;
color:#555;
}

/* =================================
CAMPUS PHILOSOPHY
================================ */

.campus-philosophy{
padding:80px 0;
background:#ffffff;
}



/* =================================
CAMPUS STORY
================================ */

.campus-story{
padding:80px 0;
background:#faf7f3;
}

.story-editorial{
margin-top:60px;
display:flex;
flex-direction:column;
gap:80px;
}

.story-row{
display:grid;
grid-template-columns:380px 1fr;
gap:50px;
align-items:center;
}

.story-row.reverse{
grid-template-columns:1fr 380px;
}

.story-row.reverse .story-image{
order:2;
}

.story-row.reverse .story-content{
order:1;
}

.story-image{
overflow:hidden;
border-radius:10px;
}

.story-image img{
width:100%;
height:280px;
object-fit:cover;
transition:transform .5s ease;
}

.story-row:hover img{
transform:scale(1.02);
}

.story-content h3{
font-size:26px;
font-weight:600;
margin-bottom:10px;
color:#222;
}

.story-content p{
font-size:16px;
line-height:1.7;
color:#666;
margin-bottom:10px;
max-width:620px;
}



/* =================================
CAMPUS EXPERIENCE
================================ */

.campus-experience{
padding:80px 0;
background:#ffffff;
}

.experience-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:40px;
margin-top:60px;
}

.experience-card{
text-align:center;
}

.experience-card img{
width:100%;
border-radius:10px;
margin-bottom:12px;
}

.experience-card h4{
font-size:20px;
}



/* =================================
STUDIO LIFE
================================ */

.studio-life{
padding:80px 0;
background:#faf7f3;
}

.studio-grid{
display:grid;
grid-template-columns:420px 1fr;
gap:80px;
align-items:center;
margin-top:60px;
}

.studio-image{
overflow:hidden;
border-radius:12px;
}

.studio-image img{
width:100%;
height:320px;
object-fit:cover;
transition:transform .5s ease;
}

.studio-grid:hover img{
transform:scale(1.02);
}

.studio-content p{
font-size:16px;
line-height:1.7;
color:#666;
margin-bottom:14px;
max-width:620px;
}


/* =================================
GALLERY
================================ */

.campus-gallery{
padding:80px 0;
background:#ffffff;
}

.gallery-grid{
margin-top:60px;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.gallery-grid img{
width:100%;
border-radius:10px;
}



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

.campus-cta{
padding:90px 0;
background:#faf7f3;
text-align:center;
}

.theme-btn,
button.theme-btn{
display:inline-flex;
align-items:center;
justify-content:center;
padding:14px 36px;
background:linear-gradient(90deg,#ffc107,#f57c00);
color:#ffffff;
font-size:16px;
font-weight:600;
border-radius:40px;
text-decoration:none;
border:none;
cursor:pointer;
transition:all .3s ease;
box-shadow:0 6px 18px rgba(0,0,0,0.12);
}

.theme-btn:hover,
button.theme-btn:hover{
transform:translateY(-3px);
box-shadow:0 14px 32px rgba(0,0,0,0.18);
}

/* CAMPUS CTA */

.campus-cta{
padding:80px 0;
background:#faf7f3;
}

.campus-cta .cta-inner{
max-width:720px;
margin:0 auto;
text-align:center;
}

.campus-cta .section-subtext{
margin:14px auto 30px;
}


/* =================================
MOBILE
================================ */

@media(max-width:991px){

.story-row{
grid-template-columns:1fr;
gap:30px;
}

.story-row.reverse{
grid-template-columns:1fr;
}

.experience-grid{
grid-template-columns:1fr 1fr;
}

.gallery-grid{
grid-template-columns:1fr 1fr;
}

.studio-grid{
grid-template-columns:1fr;
gap:30px;
}

.studio-image img{
height:240px;
}

}