/* =============================
PROGRAM SECTION
============================= */

.programs{
padding:80px 20px;
background:#f8fafc;
}

.container{
max-width:1200px;
margin:auto;
}


/* =============================
HEADER
============================= */

.program-header{
padding: 30px;
text-align:center;
margin-bottom:40px;

/* CENTER FIX */
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
}

/* TITLE CENTER PERFECT */
.program-header h2{
font-size:42px;
font-weight:700;
color:#111827;
text-align:center;
margin:0 auto;
}

/* SUBTITLE CENTER PERFECT */
.program-header p{
color:#6b7280;
margin-top:10px;
font-size:16px;
text-align:center;
max-width:600px; /* keeps it neat */
margin-left:auto;
margin-right:auto;
}

/* =============================
TABS
============================= */

.program-tabs{
display:flex;
gap:15px;
justify-content:center;
background:#eef2f7;
padding:15px;
border-radius:10px;
margin-bottom:40px;
flex-wrap:wrap;
}

.tab{
background:none;
border:none;
padding:10px 18px;
font-weight:500;
cursor:pointer;
}

.tab.active{
background:#2563eb;
color:white;
border-radius:6px;
}


/* =============================
PROGRAM CONTENT GRID (MAIN FIX)
============================= */

.program-content{
display:none;
width:100%;
}

.program-content.active{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
justify-content:center;
align-items:start;
}


/* =============================
CARD
============================= */

.course-card{
background:#fff;
border-radius:12px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:0.3s;

/* FIX WIDTH ISSUE */
max-width:350px;
width:100%;
margin:auto;
}

.course-card:hover{
transform:translateY(-6px);
box-shadow:0 20px 40px rgba(0,0,0,0.15);
}


/* =============================
IMAGE
============================= */

.course-image img{
width:100%;
height:180px;
object-fit:cover;
}


/* =============================
BODY
============================= */

.course-body{
padding:18px;
text-align:left;
}


/* =============================
LEVEL
============================= */

.level{
display:inline-block;
background:#dcfce7;
color:#16a34a;
font-size:12px;
padding:3px 8px;
border-radius:5px;
margin-bottom:6px;
}


/* =============================
BADGE
============================= */

.badge{
display:block;
font-size:12px;
color:#6b7280;
margin-bottom:5px;
}


/* =============================
TITLE
============================= */

.title{
font-size:16px;
font-weight:600;
margin-bottom:8px;
}


/* =============================
DESCRIPTION
============================= */

.desc{
font-size:13px;
color:#6b7280;
margin-bottom:10px;
}


/* =============================
RATING
============================= */

.rating{
display:flex;
align-items:center;
gap:3px;
margin-bottom:10px;
}

.star{
color:#d1d5db;
}

.star.filled{
color:#fbbf24;
}

.rating-text{
font-size:12px;
margin-left:5px;
color:#555;
}


/* =============================
FOOTER
============================= */

.course-footer{
display:flex;
justify-content:space-between;
align-items:center;
border-top:1px solid #eee;
padding-top:10px;
}

.time{
font-size:13px;
color:#555;
}

.call-btn{
color:#ef4444;
text-decoration:none;
font-weight:500;
}


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

.program-cta{
margin-top:60px;
background:linear-gradient(135deg,#1f9aaa,#1ea4b6);
border-radius:12px;
padding:40px 50px;
position:relative;
overflow:hidden;
color:#fff;
}

.program-cta::before{
content:"";
position:absolute;
width:200px;
height:200px;
background:rgba(255,255,255,0.12);
border-radius:50%;
left:-60px;
top:-60px;
}

.program-cta::after{
content:"";
position:absolute;
width:80px;
height:80px;
background:rgba(255,255,255,0.18);
border-radius:50%;
right:120px;
top:30px;
}

.cta-content{
display:flex;
justify-content:space-between;
align-items:center;
gap:30px;
flex-wrap:wrap;
}

.cta-text h3{
font-size:30px;
font-weight:700;
margin-bottom:10px;
}

.cta-text p{
color:#e0f2fe;
font-size:16px;
opacity:0.9;
}

.cta-btn a{
display:inline-block;
padding:12px 28px;
border:2px solid #facc15;
border-radius:8px;
color:#facc15;
font-weight:600;
text-decoration:none;
transition:0.3s ease;
}

.cta-btn a:hover{
background:#facc15;
color:#0f172a;
}

/* =============================
FLOATING BUTTONS
============================= */

/* WhatsApp LEFT */
.floating-whatsapp{
position:fixed;
left:20px;
bottom:25px;
width:60px;
height:60px;
background:#25D366;
color:white;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:26px;
box-shadow:0 10px 25px rgba(0,0,0,0.25);
z-index:9999;
transition:.3s;
animation:float 2s infinite;
}

.floating-whatsapp:hover{
transform:scale(1.1);
}

/* Call RIGHT */
.floating-call{
position:fixed;
right:20px;
bottom:25px;
width:60px;
height:60px;
background:#2563eb;
color:white;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:24px;
box-shadow:0 10px 25px rgba(0,0,0,0.25);
z-index:9999;
transition:.3s;
animation:float 2s infinite;
}

.floating-call:hover{
transform:scale(1.1);
}

/* Floating animation */
@keyframes float{
0%{transform:translateY(0)}
50%{transform:translateY(-6px)}
100%{transform:translateY(0)}
}

/* Mobile responsive */
@media(max-width:600px){

.floating-whatsapp,
.floating-call{
width:55px;
height:55px;
font-size:22px;
}

.floating-whatsapp{
left:15px;
bottom:20px;
}

.floating-call{
right:15px;
bottom:20px;
}

}

/* =============================
PLACEMENTS SECTION
============================= */

.placements-section{
padding:80px 20px;
background:#f9fafb;
}

.placement-header{
text-align:center;
margin-bottom:40px;
}

.placement-header h2{
font-size:36px;
font-weight:700;
color:#111827;
}

.placement-header p{
color:#6b7280;
margin-top:10px;
}

/* GRID */
.placement-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

/* =============================
PLACEMENT CARD IMPROVED
============================= */

.placement-card{
background:white;
border-radius:16px;
padding:30px 20px;
text-align:center;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:0.3s;
max-width:350px;
margin:auto;
}

.placement-card:hover{
transform:translateY(-8px);
box-shadow:0 20px 40px rgba(0,0,0,0.15);
}

/* STUDENT IMAGE CENTER */
.student-img{
width:90px;
height:90px;
border-radius:50%;
object-fit:cover;
margin:0 auto 15px auto;
display:block;
}

/* NAME */
.placement-card h4{
font-size:18px;
font-weight:600;
margin-bottom:5px;
}

/* ROLE */
.role{
color:#2563eb;
font-size:14px;
margin-bottom:10px;
}

/* COMPANY LOGO */
.company-logo{
width:80px;
height:90px;
object-fit:contain;
margin:10px auto;
display:block;
}

/* COMPANY NAME */
.company{
color:#6b7280;
font-size:14px;
margin-bottom:10px;
}

/* SALARY */
.salary{
display:inline-block;
background:#dcfce7;
color:#16a34a;
padding:6px 12px;
border-radius:8px;
font-size:13px;
font-weight:600;
}


/* =============================
RESPONSIVE
============================= */

@media(max-width:1024px){
.program-content.active{
grid-template-columns:repeat(2,1fr);
}
}

@media(max-width:600px){
.program-content.active{
grid-template-columns:1fr;
}

.program-header h2{
font-size:28px;
}

.tab{
font-size:14px;
padding:8px 14px;
}
}
/* =============================
TABLET
============================= */

@media(max-width:1024px){

.course-grid{
grid-template-columns:repeat(2,1fr);
}

.program-header h2{
font-size:36px;
}

}


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

@media(max-width:600px){

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

.program-tabs{
gap:10px;
flex-wrap:wrap;
}

.tab{
font-size:14px;
padding:8px 14px;
}

.program-header h2{
font-size:28px;
}

.program-header p{
font-size:14px;
}

}
@media(max-width:992px){

.course-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

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

.program-header h2{
font-size:28px;
}

.tab{
font-size:14px;
padding:8px 14px;
}

}
@media(max-width:992px){

.course-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

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

.program-header h2{
font-size:28px;
}

.tab{
font-size:14px;
padding:8px 14px;
}

}