 * { margin:0; padding:0; box-sizing:border-box; font-family:'Poppins',sans-serif; }
        .hero { 
            background: #e07410;
            color:#ffffff;  
            text-align:center; 
            padding:120px 20px 80px;
            position:relative;
            overflow:hidden;
        }
/* Reduce gap between "What Students Learn" and "Past Projects" */
.program {
  margin-top: 0;            /* remove extra top gap */
  margin-bottom: 6px;      /* small bottom spacing */
  padding-top: 16px;       /* keep some breathing room */
  padding-bottom: 12px;
}

.program h2 {
  margin-top: 0;
  margin-bottom: 10px;     /* tighten heading gap */
  line-height: 1.1;
}

.program + #product,
.program + section.product,
.program + .product {
  margin-top: 0;
  padding-top: 0;          /* ensure the following section doesn't force extra gap */
}

/* If .head_title (inside #product) has top margin from existing CSS, reduce it */
#product .head_title {
  margin-top: 6px;         /* small offset so headings don't collide */
}
.hero::before {
            content:''; position:absolute; top:0; left:0; right:0; bottom:0;
            background:url('https://images.unsplash.com/photo-1534665482403-a909d5d57c50?ixlib=rb-4.0.3&auto=format&fit=crop&q=80') center/cover;
            opacity:0.2;
        }
        
        .hero h1 { font-size:3.3rem; margin-bottom:16px; position:relative; }
        .hero p { font-size:1.3rem; max-width:800px; margin:0 auto 32px; position:relative; }
        .partners { 
            background:#f8f9fa; padding:60px 20px; text-align:center;
        }
        .partners h2 { font-size:2.5rem; color:#0f4c81; margin-bottom:40px; }
        .logo-grid { 
            display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); 
            gap:30px; max-width:1200px; margin:0 auto;
        }
        .logo-item { 
            background:#fff; padding:20px; border-radius:12px; 
            box-shadow:0 8px 25px rgba(0,0,0,0.1); transition:transform .3s;
        }
        .logo-item:hover { transform:translateY(-8px); }
        .logo-item img { height:60px; filter:grayscale(20%); }
        .program { padding:80px 20px; background:#fff; }
        .program h2 { text-align:center; font-size:2.5rem; color:#0f4c81; margin-bottom:50px; }
        .cards { 
            display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); 
            gap:30px; max-width:1200px; margin:0 auto;
        }
        .card { 
            background:#fff; border-radius:16px; overflow:hidden;
            box-shadow:0 10px 30px rgba(0,0,0,0.08); transition:transform .3s;
        }
        .card:hover { transform:scale(1.03); }
        .card img { width:100%; height:200px; object-fit:cover; }
        .card-body { padding:24px; }
        .card h3 { font-size:1.5rem; color:#0f4c81; margin-bottom:12px; }
        .card p { color:#555; line-height:1.6; }
        .cta { text-align:center; padding:80px 20px; background:#0f4c81; color:#fff; }
        .cta h2 { font-size:2.5rem; margin-bottom:20px; }
        .btn {
            display:inline-block; background:#ffd700; color:#0f4c81;
            padding:16px 40px; border-radius:50px; font-weight:700; font-size:1.2rem;
            text-decoration:none; margin-top:20px; transition:background .3s;
        }
        .btn:hover { background:#ffed4e; }
        @media(max-width:768px){
            .hero h1{font-size:2.5rem;}
            .hero p{font-size:1.1rem;}
        }
