
:root{
  --brand: #6c5ce7;
  --brand-2: #a29bfe;
  --text: #0b1220;
}

*{box-sizing:border-box}
body{
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: var(--text);
  background: #fff;
  /*padding-top: 72px; navbar offset */
}

/* Navbar */
.navbar-glass{
  background: rgba(10, 14, 25, 0.65);
  backdrop-filter: blur(8px);
}
.navbar-glass .nav-link{
  color: rgba(255,255,255,.85);
}
.navbar-glass .nav-link.active, .navbar-glass .nav-link:hover{
  color: #fff;
}
.logo-text{
  background: linear-gradient(90deg, #fff, #d9d6ff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  letter-spacing: .5px;
  text-transform: uppercase;
}

/* Buttons */
.btn-brand{
  --bs-btn-bg: var(--brand);
  --bs-btn-border-color: var(--brand);
  --bs-btn-hover-bg: #5843e4;
  --bs-btn-hover-border-color: #5843e4;
  --bs-btn-color: #fff;
}
.btn-outline-light:hover{ color:#000; }
.btn-outline-dark:hover{ opacity:.85; }

/* Hero */
.hero-section{
  position: relative;
  background: url('https://images.unsplash.com/photo-1523580846011-d3a5bc25702b?q=80&w=1600&auto=format&fit=crop') center/cover no-repeat;
  min-height: 72vh;
  display:flex;
  align-items:center;
}
.hero-section .overlay{
  position:absolute; inset:0; 
  background: linear-gradient(180deg, rgba(3, 7, 18, .6), rgba(3,7,18,.45));
}
.brand-accent{ color:#fff; border-bottom: 3px solid var(--brand-2); }

/* Feature cards */
.feature-card{
  background: #fff;
  border-radius: 16px;
  padding: 22px;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 6px 18px rgba(17, 24, 39, .06);
}
.icon-wrap{
  width: 48px; height:48px;
  display:grid; place-items:center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--brand), var(--brand-2));
  color:#fff; font-size: 1.3rem;
  margin-bottom:12px;
}

/* Program cards */
.card-program{
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 18px;
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}
.card-program:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(17, 24, 39, .12);
}
.program-img{
  width: 100%;
  height: 180px;
  background-size: cover;
  background-position: center;
}

/* Page header */
.page-header{
  padding: 88px 0 48px;
  background: linear-gradient(180deg, rgba(162,155,254,.15), rgba(108,92,231,.06));
}

/* Badge cards / stats */
.badge-card{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius: 14px; padding: 18px;
  display:flex; flex-direction:column; align-items:flex-start;
}
.badge-card i{ font-size: 1.4rem; color: var(--brand); }
.stat-tile{
  background: #fff; border:1px dashed rgba(108,92,231,.35);
  border-radius:14px; padding:16px;
}

/* Vision & Mission */
.vm-card{
  background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:18px; padding:22px;
  box-shadow: 0 6px 18px rgba(17,24,39,.06);
}
.vm-icon{
  width: 56px; height:56px; border-radius: 14px;
  background: linear-gradient(135deg, var(--brand), var(--brand-2));
  display:grid; place-items:center; color:#fff; font-size:1.4rem; margin-bottom:10px;
}
.bg-gradient-subtle{
  background: linear-gradient(180deg, rgba(162,155,254,.1), rgba(108,92,231,.06));
}
.chip{
  border:1px solid rgba(0,0,0,.08);
  padding:.4rem .7rem; border-radius: 999px; background:#fff;
  font-size:.9rem;
}
.quote-box i{ color:var(--brand); }

/* Faculty */
.faculty-card{
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 18px;
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}
.faculty-card:hover{ transform: translateY(-4px); box-shadow: 0 12px 28px rgba(17,24,39,.12); }
.faculty-photo{
  height: 180px; background-size: cover; background-position: center;
}
.icon-link{
  width: 36px; height:36px; border-radius: 10px;
  display:grid; place-items:center;
  background: #f6f6ff; color: var(--brand);
  text-decoration: none;
}
.icon-link:hover{ opacity: .9; }

/* Footer */
.footer{
  background: #0a0e19;
  color: #d8dcff;
}
.footer-link{ color:#cfd2ff; text-decoration:none; }
.footer-link:hover{ color:#fff; text-decoration:underline; }

/* WhatsApp Floating Button */
.whatsapp-float{
  position: fixed; right: 18px; bottom: 18px;
  width: 52px; height: 52px; border-radius: 999px;
  display:grid; place-items:center;
  background:#25D366; color:#fff; text-decoration:none; font-size: 1.6rem;
  box-shadow: 0 8px 18px rgba(0,0,0,.2);
  z-index: 1050;
}
.whatsapp-float:hover{ filter: brightness(1.05); }

/* Utilities */
.opacity-90{ opacity:.9; }
