/* ==========================================================================
   CORE VARIABLES & RESET
   ========================================================================== */
:root {
  --navy: #002147;
  --red:  #dc3545;
  --gold: #C5A059;
  --ink:  #0f172a;
  --muted: #6b7280;
  --max: 1200px;
  --topbar-h: 38px;
  --header-h: 70px;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: 'Poppins', system-ui, sans-serif;
  color: var(--ink);
  background: #fcfcfc;
  padding-top: calc(var(--topbar-h) + var(--header-h));
  overflow-x: hidden;
}

img { max-width:100%; height:auto; display:block; }

.container-narrow {
  width: min(var(--max), 100%);
  margin-inline: auto;
  padding-inline: 20px;
}


/* ==========================================================================
   SECTION UTILITIES
   ========================================================================== */
.section { padding: clamp(50px, 7vw, 100px) 0; }
.title {
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  font-weight: 900;
  letter-spacing: -1px;
  color: var(--navy);
  margin-bottom: 10px;
}
.muted { color: var(--muted); margin-bottom: 30px; }

/* Course cards */
.course-media {
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 14px 14px 0 0;
}
.course-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.card:hover .course-media img { transform: scale(1.05); }

.shadow-soft { box-shadow: 0 8px 24px rgba(2,6,23,0.09); }
.text-muted-2 { color: var(--muted); }

.badge-blue {
  background: var(--navy);
  color: #fff;
  font-size: 11px;
  padding: 5px 10px;
}
.badge-over {
  position: absolute;
  top: 12px;
  left: 12px;
}

/* Course filter buttons */
#courseFilters .btn {
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
}

/* ==========================================================================
   WELCOME SECTION
   ========================================================================== */
.welcome-ultra-wide {
  padding: 100px 0;
  background: #fff;
}
.container-wide {
  width: min(1600px, 100%);
  margin-inline: auto;
  padding-inline: 40px;
}
.welcome-pre-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: var(--red);
  display: block;
  margin-bottom: 12px;
}
.welcome-main-title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 900;
  color: var(--navy);
  letter-spacing: -3px;
  line-height: 1;
  margin-bottom: 25px;
}
.welcome-main-title span { color: var(--red); }

/* Program preview cards */
.modern-prog-card {
  border: 1px solid #e8ecf0;
  border-radius: 14px;
  overflow: hidden;
  padding-bottom: 20px;
  transition: box-shadow 0.3s, transform 0.3s;
}
.modern-prog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 50px rgba(0,33,71,0.1);
}
.prog-img-wrap {
  height: 180px;
  overflow: hidden;
  margin-bottom: 16px;
}
.prog-title {
  font-size: 18px;
  font-weight: 800;
  color: var(--navy);
  padding: 0 16px;
  margin-bottom: 8px;
}
.prog-title span { color: var(--red); }
.modern-prog-card p,
.modern-prog-card a {
  padding: 0 16px;
}

/* Admission panel */
.admission-panel-modern {
  background: #fff;
  border: 1px solid #e8ecf0;
  border-radius: 16px;
  padding: 40px 35px;
  box-shadow: 0 20px 60px rgba(0,33,71,0.07);
  position: sticky;
  top: calc(var(--topbar-h) + var(--header-h) + 20px);
}
.input-label-minimal {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted);
  display: block;
  margin-bottom: 6px;
}
.input-minimal {
  width: 100%;
  border: none;
  border-bottom: 2px solid #e2e8f0;
  padding: 10px 0;
  font-size: 14px;
  outline: none;
  background: transparent;
  color: var(--ink);
  margin-bottom: 20px;
  transition: border-color 0.2s;
}
.input-minimal:focus { border-color: var(--navy); }
.btn-submit-modern {
  width: 100%;
  background: var(--navy);
  color: #fff;
  border: none;
  padding: 14px;
  font-weight: 700;
  font-size: 14px;
  border-radius: 10px;
  cursor: pointer;
  margin-top: 10px;
  transition: background 0.2s, transform 0.2s;
  letter-spacing: 0.5px;
}
.btn-submit-modern:hover {
  background: #001535;
  transform: translateY(-2px);
}

@media (max-width: 768px) {
  .container-wide { padding-inline: 20px; }
  .welcome-ultra-wide { padding: 60px 0; }
  .admission-panel-modern { position: static; margin-top: 30px; }
  
  
  
  
  
  
  
  
  
  :root {
  --uni-navy: #0d2b57;
  --uni-blue: #0056b3;
  --uni-gray: #f8f9fa;
  --uni-border: #e9ecef;
  --uni-text: #2d3436;
}

body { 
  padding-top: 135px !important; 
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif; 
  background-color: #fff;
}

.topbar {
  position: fixed; top: 0; left: 0; z-index: 1200;
  background: var(--uni-navy);
  color: #ffffff;
  height: 40px;
  font-size: 12px;
  font-weight: 500;
}

header.main-header {
  position: fixed; top: 40px; left: 0; z-index: 1100;
  background: #ffffff;
  border-bottom: 1px solid var(--uni-border);
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

/* ... include the rest of the polished CSS I gave you previously ... */
  
  
  
  
  
  
  /* EDEN CAMPUS OFFICIAL STYLESHEET */

:root {
  --uni-navy: #0d2b57;
  --uni-blue: #0056b3;
  --uni-gray: #f8f9fa;
  --uni-border: #e9ecef;
  --uni-text: #2d3436;
}

/* Fix for the oversized logo in your screenshot */
.uni-logo {
  height: 52px !important;
  width: auto;
  display: block;
}

/* Rest of your polished coding... */
  
  
 
/* UNIVERSITY DESIGN SYSTEM 
   Focus: Flat, High-Authority, No Animation
*/

:root {
  --uni-navy: #0d2b57;
  --uni-blue: #0056b3;
  --uni-gray: #f8f9fa;
  --uni-border: #e9ecef;
  --uni-text: #2d3436;
}

/* 135px padding prevents the hero section from being covered by the frozen header */
body { 
  padding-top: 135px !important; 
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif; 
  background-color: #fff;
}

/* --- Topbar Styling --- */
.topbar {
  position: fixed; top: 0; left: 0; z-index: 1200;
  background: var(--uni-navy);
  color: #ffffff;
  height: 40px;
  font-size: 12px;
  font-weight: 500;
}
.info-item i { color: #a5b1c2; }

.top-links { height: 100%; }
.top-links a {
  color: #ffffff;
  text-decoration: none;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0 15px;
  border-left: 1px solid rgba(255,255,255,0.15);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.top-links a:hover { background: rgba(255,255,255,0.1); }

/* --- Main Header Styling --- */
header.main-header {
  position: fixed; top: 40px; left: 0; z-index: 1100;
  background: #ffffff;
  border-bottom: 1px solid var(--uni-border);
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.uni-logo { height: 50px; width: auto; }
.brand-divider { width: 1px; height: 35px; background: #dee2e6; }

.uni-title {
  font-size: 20px; font-weight: 800; color: var(--uni-navy);
  margin: 0; letter-spacing: 0.5px; line-height: 1;
}
.uni-subtitle {
  font-size: 10px; font-weight: 700; color: #6c757d;
  margin: 3px 0 0 0; letter-spacing: 2px; text-transform: uppercase;
}

/* --- Navigation & Menu --- */
.nav-link {
  color: var(--uni-text) !important;
  font-weight: 700;
  font-size: 13px;
  padding: 25px 15px !important; /* Vertical padding centers link in the bar */
  letter-spacing: 0.3px;
}
.nav-link:hover, .nav-link.active { color: var(--uni-blue) !important; }

.dropdown-menu {
  border-radius: 0;
  border-top: 4px solid var(--uni-blue);
  box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important;
}
.dropdown-item { font-size: 14px; font-weight: 600; padding: 10px 20px; color: var(--uni-text); }
.dropdown-item:hover { background: var(--uni-gray); color: var(--uni-blue); }

/* --- Academic Buttons (Flat Style) --- */
.btn-uni-outline {
  border: 2px solid var(--uni-navy);
  color: var(--uni-navy);
  border-radius: 3px;
  font-weight: 800;
  font-size: 11px;
  padding: 8px 15px;
  letter-spacing: 0.5px;
}
.btn-uni-outline:hover { background: var(--uni-navy); color: #fff; }

.btn-uni-primary {
  background: var(--uni-blue);
  color: #ffffff;
  border: 1px solid var(--uni-blue);
  border-radius: 3px;
  font-weight: 800;
  font-size: 11px;
  padding: 9px 15px;
  letter-spacing: 0.5px;
}
.btn-uni-primary:hover { background: var(--uni-navy); border-color: var(--uni-navy); color: #fff; }

/* --- Mobile Responsiveness --- */
@media (max-width: 991px) {
  body { padding-top: 120px !important; }
  header.main-header { top: 40px; }
  .nav-link { padding: 12px 15px !important; border-bottom: 1px solid #f8f9fa; }
  .navbar-collapse {
    background: #fff;
    max-height: 80vh;
    overflow-y: auto;
    padding: 15px;
    border-top: 2px solid var(--uni-blue);
  }
}
 


  
  
  
  
  
  
  
  
  
  
  
  
  