.curriculum-hero{
background:#fff;
border:1px solid #e9ecef;
border-radius:12px;
padding:30px;
margin-bottom:35px;
box-shadow:0 3px 12px rgba(0,0,0,.04);
}

.curriculum-content{
max-width:100%;
}


.curriculum-hero h1{
font-size:1.4rem;
font-weight:700;
margin-bottom:10px;
color:#323335;
text-align: center;
}

.curriculum-lead{
font-size:1rem;
margin-bottom:18px;
color:#6c757d;
}

.curriculum-text{
overflow:hidden;
transition:max-height .45s ease;
}

.curriculum-text.collapsed{
max-height:120px;
}

.curriculum-text.expanded{
max-height:1200px;
}

.curriculum-text p{
font-size:.95rem;
line-height:1.7;
margin-bottom:12px;
color: #594d58;

}

.curriculum-toggle{
border:none;
background:none;
color:#4f8f3a;
cursor:pointer;
display:flex;
align-items:center;
gap:8px;
font-weight:600;
margin-top:8px;
padding:0;
}

.curriculum-toggle:hover

.curriculum-toggle i{
transition:.3s;
}

.curriculum-text.expanded + .curriculum-toggle i{
transform:rotate(180deg);
}

/* MODULES */

.modules-section{
margin-top:35px;
}

.e-section-header{
margin-bottom:25px;
}

.e-section-header h2{
font-size:1.2rem;
font-weight:700;
color:#1f2937;
margin:0;
text-align: center;
}

.course-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
gap:25px;
text-align: center;
}

.course-card{
background:#fff;
border:1px solid #ececec;
border-radius:12px;
overflow:hidden;
transition:.25s ease;
}

.course-card:hover{
transform:translateY(-4px);
box-shadow:0 8px 24px rgba(0,0,0,.08);
}

.course-image{
position:relative;
overflow:hidden;
}

.course-image img{
width:100%;
height:180px;
object-fit:cover;
display:block;
transition:.5s;
}

.course-card:hover .course-image img{
transform:scale(1.05);
}

.course-overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,.65);
opacity:0;
display:flex;
align-items:center;
justify-content:center;
transition:.3s;
}

.course-card:hover .course-overlay{
opacity:1;
}

.overlay-content{
text-align:center;
padding:20px;
color:#fff;
}

.lock-icon{
font-size:1.4rem;
margin-bottom:10px;
}

.overlay-content h4{
font-size:.95rem;
font-weight:500;
line-height:1.5;
margin-bottom:14px;
}

.btn-signup{
display:inline-block;
padding:8px 18px;
border-radius:8px;
background:#4f8f3a;
color:#fff;
text-decoration:none;
font-size:.9rem;
font-weight:600;
}

.btn-signup:hover

.course-body{
padding:15px;
}

.module-no{
display:block;
font-size:.8rem;
font-weight:700;
color:#4f8f3a;
margin-bottom:8px;
}

.course-body h3{
font-size:0.93rem;
font-weight:600;
line-height:1.45;
margin:0;
color:#1f2937;
}

.curriculum-toggle.active i{
    transform:rotate(180deg);
}

