/* ============================================================
   VibrantMinds Technologies — Candidates Website
   assets/css/candidates.css — Custom Page Styles (Premium SevenMentor Theme)
   ============================================================ */

/* ── MISSING VARIABLE (add to root) ─────────────────────────── */
:root {
  --color-border: rgba(0, 22, 72, 0.1);
  --color-admin-secondary: #1e40af;
}

/* ── SCROLL REVEAL ANIMATION ─────────────────────────────────── */
.scroll-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.scroll-reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ── INNER BANNER (all non-home pages) ───────────────────────── */
.inner-banner {
  background-color: #02091a;
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.82) 0%, rgba(0, 22, 72, 0.88) 60%, rgba(2, 9, 26, 0.92) 100%),
    url('../images/banner-bg.png');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  padding: 130px 0 60px;
  position: relative;
  overflow: hidden;
}
/* Page-specific banner backgrounds (photorealistic, blended with navy) */
.banner-about {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/about-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-contact {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/contact-banner.png');
  background-size: cover;
  background-position: center top;
}
.banner-blog {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/blog-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-courses {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/courses-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-drives {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/drives-banner.png');
  background-size: cover;
  background-position: center top;
}
.banner-placements {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/placements-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-batches {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/batches-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-success {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/success-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-hiring {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/hiring-banner.png');
  background-size: cover;
  background-position: center center;
}
.banner-masterclasses {
  background-image:
    linear-gradient(135deg, rgba(2, 9, 26, 0.72) 0%, rgba(0, 22, 72, 0.78) 50%, rgba(2, 9, 26, 0.85) 100%),
    url('../images/banners/batches-banner.png');
  background-size: cover;
  background-position: center center;
}
.inner-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  background: 
    radial-gradient(circle at 80% 40%, rgba(253, 72, 0, 0.14) 0%, transparent 55%),
    linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
  background-size: auto, 30px 30px, 30px 30px;
  pointer-events: none;
}
.banner-tag {
  display: inline-block;
  background: rgba(253,72,0,.15);
  color: var(--color-orange);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 20px;
  margin-bottom: 14px;
}
.banner-title {
  font-size: 2.6rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1.15;
  margin-bottom: 14px;
}
.banner-subtitle {
  color: rgba(255,255,255,.72);
  font-size: 1.05rem;
  max-width: 620px;
  line-height: 1.6;
}
@media(max-width:768px){
  .inner-banner { padding: 110px 0 45px; }
  .banner-title { font-size: 1.9rem; }
}

/* Banner container — text centered, high z-index over background */
.inner-banner .container {
  position: relative;
  z-index: 2;
}

/* ── SECTION HELPERS ─────────────────────────────────────────── */
.section-padding { padding: 80px 0; }
@media(max-width:768px){ .section-padding { padding: 50px 0; } }

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 40px;
  flex-wrap: wrap;
  gap: 20px;
}
.section-header.text-center {
  display: block;
}
@media(max-width: 768px) {
  .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 30px;
  }
}

.section-tag {
  display: block;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--color-orange);
  margin-bottom: 10px;
}
.section-title {
  font-size: 2.1rem;
  font-weight: 800;
  color: var(--color-navy);
  line-height: 1.2;
  margin-bottom: 16px;
}
@media(max-width:768px){ .section-title { font-size: 1.65rem; } }

.text-link {
  display: inline-flex;
  align-items: center;
  color: var(--color-orange);
  font-family: var(--font-body);
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1.5px solid transparent;
  padding-bottom: 2px;
  transition: var(--transition-fast);
}
.text-link:hover {
  color: var(--color-navy);
  border-bottom-color: var(--color-navy);
}

.text-link-white {
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.3);
}
.text-link-white:hover {
  color: #ffffff;
  border-bottom-color: #ffffff;
}


/* ── THEME BUTTONS ───────────────────────────────────────────── */
.theme-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 22px;
  border-radius: 7px;
  font-family: var(--font-body);
  font-size: .9rem;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: var(--transition-fast);
  border: 2px solid transparent;
}
.theme-btn-primary {
  background: var(--color-orange);
  color: #ffffff;
  border-color: var(--color-orange);
}
.theme-btn-primary:hover {
  background: #d93d00;
  border-color: #d93d00;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(253,72,0,.30);
}
.theme-btn-outline {
  background: transparent;
  color: var(--color-navy);
  border-color: var(--color-navy);
}
.theme-btn-outline:hover {
  background: var(--color-navy);
  color: #ffffff;
  transform: translateY(-2px);
}

/* ── FILTER BAR ──────────────────────────────────────────────── */
.filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 10px;
  padding: 20px 0;
}
.filter-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.filter-btn {
  padding: 8px 18px;
  border-radius: 30px;
  border: 1.5px solid var(--color-border);
  background: #ffffff;
  color: var(--color-navy);
  font-size: .87rem;
  font-weight: 500;
  cursor: pointer;
  text-decoration: none;
  transition: var(--transition-fast);
}
.filter-btn:hover, .filter-btn.active {
  background: var(--color-orange);
  border-color: var(--color-orange);
  color: #ffffff;
}

/* ── SEARCH BOX ──────────────────────────────────────────────── */
.search-box {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #ffffff;
  border: 1.5px solid var(--color-border);
  border-radius: 30px;
  padding: 8px 18px;
  min-width: 260px;
  transition: var(--transition-fast);
}
.search-box:focus-within {
  border-color: var(--color-orange);
  box-shadow: 0 0 0 3px rgba(253,72,0,.1);
}
.search-box svg { color: var(--color-text-dim); flex-shrink: 0; }
.search-input {
  border: none;
  outline: none;
  font-family: var(--font-body);
  font-size: .88rem;
  color: var(--color-navy);
  background: transparent;
  width: 100%;
}
.search-input::placeholder { color: #aab4c4; }

/* ── CARD GRID ───────────────────────────────────────────────── */
.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(310px,1fr));
  gap: 26px;
  padding: 30px 0 10px;
}
@media(max-width:600px){
  .card-grid { grid-template-columns: 1fr; }
}

/* ── COURSE CARD ─────────────────────────────────────────────── */
.course-card {
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid var(--color-border);
  box-shadow: 0 2px 8px rgba(0,22,72,.04);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: var(--transition-smooth);
}
.course-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,22,72,.10);
  border-top: 3px solid var(--color-orange);
}
.course-img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
}
.course-img-placeholder {
  width: 100%;
  height: 160px;
  background: linear-gradient(135deg, var(--color-navy) 0%, #0d2050 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.5);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.course-body { padding: 20px; flex: 1; display: flex; flex-direction: column; }
.course-meta { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
.course-tag {
  background: rgba(253,72,0,.1);
  color: var(--color-orange);
  font-size: .72rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.course-duration {
  background: #f1f5f9;
  color: var(--color-text-dim);
  font-size: .72rem;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 20px;
}
.course-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--color-navy);
  margin-bottom: 8px;
  line-height: 1.3;
}
.course-desc {
  font-size: .88rem;
  color: var(--color-text-dim);
  line-height: 1.5;
  flex: 1;
}
.course-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--color-border);
}
.course-fees span { font-size: .75rem; color: var(--color-text-dim); display: block; }
.course-fees strong { font-size: .95rem; color: var(--color-navy); font-weight: 700; }
.course-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--color-orange);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  flex-shrink: 0;
  transition: var(--transition-fast);
}
.course-btn:hover { background: #d93d00; transform: scale(1.08); }

/* ── DRIVE CARD (dark variant) ───────────────────────────────── */
.drive-card {
  background: #0b1f42;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.06);
  padding: 24px;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  transition: var(--transition-smooth);
}
.drive-card:hover {
  transform: translateY(-5px);
  border-color: var(--color-orange);
  box-shadow: 0 12px 35px rgba(0,22,72,.25);
}
.drive-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 18px;
}
.drive-logo {
  width: 55px;
  height: 55px;
  border-radius: 8px;
  background: #ffffff;
  padding: 5px;
  object-fit: contain;
}
.drive-logo-placeholder {
  width: 55px;
  height: 55px;
  border-radius: 8px;
  background: rgba(255,255,255,.1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: .95rem;
  color: #ffffff;
  flex-shrink: 0;
}
.drive-badge-wrap { display: flex; flex-direction: column; gap: 6px; align-items: flex-end; }
.badge-ctc {
  background: rgba(253,72,0,.2);
  color: #ff8052;
  border: 1px solid rgba(253,72,0,.3);
  padding: 4px 10px;
  border-radius: 20px;
  font-size: .73rem;
  font-weight: 700;
}
.badge-urgency {
  background: rgba(0,191,166,.2);
  color: #00c9af;
  border: 1px solid rgba(0,191,166,.3);
  padding: 4px 10px;
  border-radius: 20px;
  font-size: .73rem;
  font-weight: 700;
}
.drive-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 4px;
}
.drive-role {
  font-size: .9rem;
  color: rgba(255,255,255,.65);
  margin-bottom: 16px;
}
.drive-meta-list { display: flex; flex-direction: column; gap: 8px; }
.drive-meta-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: .83rem;
  color: rgba(255,255,255,.68);
}
.drive-meta-item svg { color: var(--color-orange); flex-shrink: 0; }

/* ── DETAIL LAYOUT (2-col: main + sidebar) ───────────────────── */
.detail-layout {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 40px;
  align-items: start;
}
@media(max-width:991px){
  .detail-layout { grid-template-columns: 1fr; }
}
.detail-main {
  min-width: 0;
}
.detail-sidebar {
  position: sticky;
  top: 100px;
}

/* ── LEAD FORM BOX ───────────────────────────────────────────── */
.lead-form-box {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 28px;
  box-shadow: 0 4px 20px rgba(0,22,72,.07);
}
.lead-form-box h4 {
  font-family: var(--font-title);
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--color-navy);
  margin-bottom: 6px;
}

/* ── RICH TEXT / WYSIWYG CONTENT ─────────────────────────────── */
.rich-text-content { color: var(--color-text-muted); line-height: 1.75; font-size: 1rem; }
.rich-text-content h2,.rich-text-content h3,.rich-text-content h4 { color: var(--color-navy); margin: 28px 0 10px; }
.rich-text-content p { margin-bottom: 16px; }
.rich-text-content ul,.rich-text-content ol { padding-left: 22px; margin-bottom: 16px; }
.rich-text-content li { margin-bottom: 7px; }
.rich-text-content a { color: var(--color-orange); }
.rich-text-content strong { color: var(--color-navy); }
.rich-text-content blockquote {
  border-left: 3px solid var(--color-orange);
  padding: 12px 20px;
  margin: 20px 0;
  background: #fff8f6;
  border-radius: 0 6px 6px 0;
  font-style: italic;
}

/* ── FORM COMPONENTS ─────────────────────────────────────────── */
.form-group { margin-bottom: 16px; }
.form-label {
  display: block;
  font-size: .83rem;
  font-weight: 600;
  color: var(--color-navy);
  margin-bottom: 5px;
}
.form-control {
  width: 100%;
  padding: 10px 14px;
  border-radius: 7px;
  border: 1.5px solid var(--color-border);
  font-family: var(--font-body);
  font-size: .9rem;
  color: var(--color-navy);
  outline: none;
  transition: var(--transition-fast);
  background: #ffffff;
}
.form-control:focus {
  border-color: var(--color-orange);
  box-shadow: 0 0 0 3px rgba(253,72,0,.1);
}
textarea.form-control { resize: vertical; min-height: 100px; }
select.form-control { appearance: auto; }

/* ── BADGE GENERIC ───────────────────────────────────────────── */
.badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: .75rem;
  font-weight: 600;
}

/* ── STORY / TESTIMONIAL CARD ────────────────────────────────── */
.story-card {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 28px;
  box-shadow: 0 2px 8px rgba(0,22,72,.04);
  transition: var(--transition-smooth);
}
.story-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,22,72,.09);
}

/* ── CONTENT CARD ────────────────────────────────────────────── */
.content-card {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  padding: 28px;
}

/* ── HIGHLIGHT TEXT ──────────────────────────────────────────── */
.highlight-text { font-weight: 600; color: var(--color-navy); }

/* ── TEXT HELPERS ────────────────────────────────────────────── */
.text-center { text-align: center; }

/* ── DROPDOWN HIGHLIGHT ──────────────────────────────────────── */
.dropdown-highlight { color: var(--color-orange) !important; font-weight: 600 !important; }

/* ── STATS COUNTER SECTION ───────────────────────────────────── */
.stats-section {
  background: var(--color-navy);
  padding: 60px 0;
}
.stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  text-align: center;
}
@media(max-width:768px){ .stats-grid { grid-template-columns: repeat(2,1fr); gap: 20px; } }
@media(max-width:400px){ .stats-grid { grid-template-columns: 1fr; } }
.stat-item { padding: 20px; }
.stat-num {
  font-family: var(--font-title);
  font-size: 2.8rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1;
  margin-bottom: 6px;
}
.stat-num span { color: var(--color-orange); }
.stat-label { font-size: .88rem; color: rgba(255,255,255,.65); font-weight: 500; }

/* ── PREMIUM TABLE ───────────────────────────────────────────── */
.table-responsive { overflow-x: auto; }
.premium-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.premium-table th {
  background: var(--color-navy);
  color: #ffffff;
  padding: 14px 18px;
  font-weight: 600;
  text-align: left;
  white-space: nowrap;
}
.premium-table td {
  padding: 13px 18px;
  border-bottom: 1px solid var(--color-border);
  color: var(--color-text-muted);
  vertical-align: top;
}
.premium-table tr:last-child td { border-bottom: none; }
.premium-table tr:hover td { background: #f8fafc; }

/* ── FOOTER LOGO FIX ─────────────────────────────────────────── */
footer .footer-logo-img,
footer .footer-logo-icon,
footer img.logo-icon {
  max-height: 40px;
  width: auto;
  object-fit: contain;
}

/* --- HERO COMPONENT MODIFICATIONS --- */
.page-hero {
    background: linear-gradient(135deg, var(--color-navy) 0%, #06112d 100%);
    color: #ffffff;
    padding: 140px 0 80px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.page-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 80% 20%, rgba(253, 72, 0, 0.1) 0%, transparent 50%);
    pointer-events: none;
}

.page-hero h1 {
    font-size: 3rem;
    color: #ffffff;
    margin-bottom: 15px;
    font-weight: 800;
}

.page-hero p {
    color: rgba(255, 255, 255, 0.8);
    max-width: 600px;
    margin: 0 auto 20px;
    font-size: 1.1rem;
}

.breadcrumbs {
    display: flex;
    justify-content: center;
    gap: 8px;
    list-style: none;
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.6);
}

.breadcrumbs a {
    color: var(--color-sky-blue);
    text-decoration: none;
    transition: var(--transition-fast);
}

.breadcrumbs a:hover {
    color: var(--color-orange);
}

.breadcrumbs li:not(:last-child)::after {
    content: '/';
    margin-left: 8px;
    color: rgba(255, 255, 255, 0.4);
}

/* --- FILTER BAR SYSTEM --- */
.filter-section {
    padding: 40px 0;
    background: var(--color-bg-light);
    border-bottom: 1px solid var(--border-light);
}

.filter-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
    justify-content: space-between;
}

.filter-group {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.filter-btn {
    padding: 8px 18px;
    border-radius: 30px;
    border: 1px solid var(--border-navy);
    background: #ffffff;
    color: var(--color-navy);
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: var(--transition-fast);
}

.filter-btn:hover, .filter-btn.active {
    background: var(--color-orange);
    border-color: var(--color-orange);
    color: #ffffff;
}

.search-input-wrap {
    position: relative;
    max-width: 300px;
    width: 100%;
}

.search-input {
    width: 100%;
    padding: 10px 16px 10px 40px;
    border-radius: 30px;
    border: 1px solid var(--border-navy);
    font-family: var(--font-body);
    font-size: 0.9rem;
    outline: none;
    transition: var(--transition-fast);
}

.search-input:focus {
    border-color: var(--color-orange);
    box-shadow: 0 0 0 3px rgba(253, 72, 0, 0.1);
}

.search-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--color-text-dim);
}

/* --- CARD GRID COMPONENT --- */
.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 30px;
    padding: 60px 0;
}

/* --- PREMIUM COURSE CARD --- */
.course-card {
    background: #ffffff;
    border-radius: 12px;
    border: 1px solid var(--border-light);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: var(--transition-smooth);
}

.course-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
    border-top: 4px solid var(--color-orange);
}

.course-card-img-wrap {
    position: relative;
    aspect-ratio: 16/10;
    background: #e2e8f0;
}

.course-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background: var(--color-orange);
    color: #ffffff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.course-card-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.course-card-title {
    font-size: 1.3rem;
    margin-bottom: 10px;
    font-weight: 700;
}

.course-card-desc {
    font-size: 0.9rem;
    color: var(--color-text-muted);
    margin-bottom: 20px;
    flex: 1;
}

.course-meta {
    display: flex;
    gap: 15px;
    padding-top: 15px;
    border-top: 1px solid var(--border-light);
    font-size: 0.85rem;
    color: var(--color-text-dim);
}

.course-meta span {
    display: flex;
    align-items: center;
    gap: 6px;
}

.course-card-actions {
    margin-top: 20px;
}

.course-card-btn {
    width: 100%;
    text-align: center;
}

/* --- PREMIUM DRIVE CARD (DARK THEME VARIANT) --- */
.drive-card {
    background: #0b1f42;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    padding: 24px;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: var(--transition-smooth);
}

.drive-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 22, 72, 0.3);
    border-color: var(--color-orange);
}

.drive-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}

.company-logo {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    background: #ffffff;
    padding: 6px;
    object-fit: contain;
}

.urgency-badge {
    background: rgba(253, 72, 0, 0.2);
    color: var(--color-orange);
    border: 1px solid rgba(253, 72, 0, 0.3);
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.urgency-badge.new {
    background: rgba(0, 191, 166, 0.2);
    color: var(--color-teal);
    border-color: rgba(0, 191, 166, 0.3);
}

.drive-role {
    font-size: 1.25rem;
    color: #ffffff;
    margin-bottom: 5px;
    font-weight: 700;
}

.drive-company {
    font-size: 0.95rem;
    color: var(--color-sky-blue);
    margin-bottom: 20px;
    font-weight: 600;
}

.drive-details-list {
    list-style: none;
    margin-bottom: 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 8px;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.7);
}

.drive-details-list li {
    display: flex;
    align-items: center;
    gap: 8px;
}

.drive-details-list svg {
    color: var(--color-orange);
    flex-shrink: 0;
}

.drive-card-footer {
    margin-top: auto;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 20px;
}

.drive-btn {
    width: 100%;
}

/* --- DETAIL PAGE DOUBLE-COLUMN LAYOUT --- */
.detail-layout {
    padding: 80px 0;
    background: #ffffff;
}

.detail-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 50px;
    align-items: start;
}

@media(max-width: 991px) {
    .detail-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

.detail-content h2 {
    font-size: 2rem;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 10px;
}

.detail-content h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 3px;
    background: var(--color-orange);
}

.detail-section {
    margin-bottom: 50px;
}

.detail-text {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--color-text-muted);
}

/* --- ACCORDION COMPONENT (SYLLABUS) --- */
.accordion {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.accordion-item {
    border: 1px solid var(--border-light);
    border-radius: 8px;
    overflow: hidden;
    background: var(--color-bg-light);
    transition: var(--transition-fast);
}

.accordion-header {
    width: 100%;
    padding: 18px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #ffffff;
    border: none;
    text-align: left;
    font-family: var(--font-title);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--color-navy);
    cursor: pointer;
}

.accordion-header:hover {
    color: var(--color-orange);
}

.accordion-icon {
    font-size: 1.3rem;
    font-weight: bold;
    color: var(--color-orange);
    transition: transform 0.3s ease;
}

.accordion-item.active .accordion-icon {
    transform: rotate(45deg);
}

.accordion-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.accordion-content {
    padding: 20px 24px;
    border-top: 1px solid var(--border-light);
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--color-text-muted);
}

.accordion-content ul {
    padding-left: 20px;
}

.accordion-content li {
    margin-bottom: 8px;
}

/* --- STICKY SIDEBAR ENQUIRY FORM --- */
.sidebar-sticky {
    position: sticky;
    top: 100px;
    z-index: 10;
}

.sidebar-card {
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid var(--border-light);
    box-shadow: var(--shadow-lg);
    padding: 30px;
}

.sidebar-card-title {
    font-size: 1.4rem;
    margin-bottom: 20px;
    text-align: center;
    color: var(--color-navy);
}

.form-group {
    margin-bottom: 18px;
}

.form-label {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-navy);
    margin-bottom: 6px;
}

.form-control {
    width: 100%;
    padding: 10px 14px;
    border-radius: 6px;
    border: 1px solid var(--border-navy);
    font-family: var(--font-body);
    font-size: 0.9rem;
    outline: none;
    transition: var(--transition-fast);
}

.form-control:focus {
    border-color: var(--color-orange);
    box-shadow: 0 0 0 3px rgba(253, 72, 0, 0.1);
}

textarea.form-control {
    resize: vertical;
    min-height: 100px;
}

.form-submit-btn {
    width: 100%;
    padding: 12px;
    font-size: 1rem;
    margin-top: 10px;
}

/* --- PREMIUM TABLE SYSTEM --- */
.table-responsive {
    overflow-x: auto;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    background: #ffffff;
    margin: 40px 0;
}

.premium-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-size: 0.95rem;
}

.premium-table th {
    background: var(--color-navy);
    color: #ffffff;
    padding: 16px 20px;
    font-weight: 600;
    white-space: nowrap;
}

.premium-table td {
    padding: 16px 20px;
    border-bottom: 1px solid var(--border-light);
    color: var(--color-text-muted);
}

.premium-table tr:last-child td {
    border-bottom: none;
}

.premium-table tr:hover td {
    background: var(--color-bg-light);
}

.highlight-text {
    font-weight: 600;
    color: var(--color-navy);
}

/* --- PLACEMENT TIMELINE / INFOGRAPHIC --- */
.process-timeline {
    position: relative;
    padding: 60px 0;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 40px;
}

.process-node {
    text-align: center;
    position: relative;
}

.process-icon-wrap {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: var(--color-bg-light);
    border: 2px solid var(--border-light);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    color: var(--color-navy);
    transition: var(--transition-smooth);
}

.process-node:hover .process-icon-wrap {
    background: var(--color-orange);
    color: #ffffff;
    border-color: var(--color-orange);
    transform: scale(1.05);
}

.process-step-num {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-orange);
    text-transform: uppercase;
    margin-bottom: 6px;
    display: block;
}

.process-node-title {
    font-size: 1.15rem;
    margin-bottom: 10px;
}

.process-node-desc {
    font-size: 0.85rem;
    color: var(--color-text-muted);
    line-height: 1.5;
}

/* --- WHATSAPP FLOATING BUTTON EXTENSION --- */
.whatsapp-float {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    background: #25d366;
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    z-index: 100;
    text-decoration: none;
    transition: var(--transition-smooth);
}

.whatsapp-float:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.25);
}

.whatsapp-float-tooltip {
    position: absolute;
    right: 75px;
    background: #ffffff;
    color: var(--color-navy);
    padding: 8px 14px;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 600;
    box-shadow: var(--shadow-md);
    border: 1px solid var(--border-light);
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transform: translateX(10px);
    transition: var(--transition-fast);
}

.whatsapp-float:hover .whatsapp-float-tooltip {
    opacity: 1;
    transform: translateX(0);
}

/* --- ENQUIRY MODAL / NOTIFICATION ALERTS --- */
.alert-banner {
    padding: 16px 24px;
    border-radius: 8px;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.95rem;
}

.alert-success {
    background: #eafdf5;
    color: #00875a;
    border: 1px solid #abf5d1;
}

.alert-danger {
    background: #ffebe6;
    color: #de350b;
    border: 1px solid #ffbdad;
}

/* --- BLOG GRID COMPONENT --- */
.blog-card {
    background: #ffffff;
    border-radius: 12px;
    border: 1px solid var(--border-light);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    transition: var(--transition-smooth);
}

.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}

.blog-card-img {
    aspect-ratio: 16/9;
    width: 100%;
    object-fit: cover;
}

.blog-card-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.blog-card-meta {
    font-size: 0.8rem;
    color: var(--color-text-dim);
    margin-bottom: 12px;
    display: flex;
    gap: 12px;
}

.blog-card-title {
    font-size: 1.25rem;
    margin-bottom: 12px;
}

.blog-card-desc {
    font-size: 0.9rem;
    color: var(--color-text-muted);
    line-height: 1.5;
    margin-bottom: 20px;
    flex: 1;
}

.blog-card-link {
    font-weight: 600;
    color: var(--color-orange);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.9rem;
}

.blog-card-link:hover {
    color: var(--color-navy);
}

/* --- FOOTER COMPONENT EXTENSIONS --- */
.site-footer {
    background: var(--color-navy);
    color: rgba(255, 255, 255, 0.7);
    padding: 80px 0 0;
    font-size: 0.95rem;
}

.footer-top {
    padding-bottom: 60px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 40px;
}

@media(max-width: 991px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
}

@media(max-width: 576px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }
}

.footer-brand p {
    color: rgba(255, 255, 255, 0.6);
    margin-top: 15px;
    font-size: 0.9rem;
}

.footer-logo-title span.footer-navy {
    color: #ffffff;
}

.footer-col-title {
    color: #ffffff;
    font-size: 1.15rem;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 8px;
}

.footer-col-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 2px;
    background: var(--color-orange);
}

.footer-links {
    list-style: none;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
    transition: var(--transition-fast);
}

.footer-links a:hover {
    color: var(--color-orange);
    padding-left: 5px;
}

.footer-contact-list {
    list-style: none;
}

.footer-contact-list li {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
    align-items: flex-start;
}

.footer-contact-list svg {
    color: var(--color-orange);
    flex-shrink: 0;
    margin-top: 3px;
}

.footer-contact-list a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
}

.footer-contact-list a:hover {
    color: var(--color-orange);
}

.footer-social {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

.footer-social-link {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    transition: var(--transition-fast);
}

.footer-social-link:hover {
    background: var(--color-orange);
}

.footer-whatsapp-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #25d366;
    color: #ffffff;
    padding: 10px 18px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.85rem;
    margin-top: 15px;
    transition: var(--transition-fast);
}

.footer-whatsapp-btn:hover {
    background: #20ba59;
}

.footer-bottom {
    background: #000c29;
    padding: 24px 0;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.4);
}

.footer-bottom-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.footer-bottom-links {
    display: flex;
    gap: 20px;
}

.footer-bottom-links a {
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
}

.footer-bottom-links a:hover {
    color: #ffffff;
}

.footer-stats-mini {
    display: flex;
    gap: 20px;
    margin-top: 25px;
}

.footer-stat-item {
    display: flex;
    flex-direction: column;
}

.footer-stat-num {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffffff;
}

.footer-stat-lbl {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.5);
}

/* ── PREMIUM HERO SECTION ───────────────────────────────────── */
/* Transparent header overrides on dark hero background */
@media (min-width: 992px) {
  header:not(.scrolled) nav > ul > li > a {
    color: rgba(255, 255, 255, 0.85) !important;
  }
  header:not(.scrolled) nav > ul > li > a:hover {
    color: var(--color-orange) !important;
  }
}
header:not(.scrolled) .logo-title span.navy {
  color: #ffffff !important;
}
header:not(.scrolled) .mobile-menu-btn span {
  background-color: #ffffff !important;
}

.premium-hero {
  position: relative;
  min-height: 80vh;
  display: flex;
  align-items: center;
  padding: 110px 0 110px;
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(253,72,0,0.18) 0%, transparent 55%),
    radial-gradient(ellipse 60% 50% at 15% 80%, rgba(99,102,241,0.14) 0%, transparent 55%),
    linear-gradient(160deg, #020b18 0%, #001240 40%, #050e2a 70%, #000912 100%);
  overflow: hidden;
}

/* Fine dot-grid on dark */
.premium-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,0.07) 1px, transparent 1px);
  background-size: 40px 40px;
  z-index: 1;
  pointer-events: none;
}

/* Subtle top-right highlight */
.premium-hero::after {
  content: '';
  position: absolute;
  top: -15%;
  right: -10%;
  width: 700px;
  height: 700px;
  background: radial-gradient(circle, rgba(253,72,0,0.14) 0%, transparent 60%);
  z-index: 1;
  pointer-events: none;
}

.premium-hero .hero-container {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 40px;
  position: relative;
  z-index: 3;
}

.premium-hero .hero-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 40px;
  align-items: center;
}

.premium-hero .hero-content {
  max-width: 100%;
  text-align: left;
}

/* Badge pill — orange glass */
.premium-hero .hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(253,72,0,0.12);
  border: 1px solid rgba(253,72,0,0.35);
  color: #ff9960;
  padding: 7px 18px;
  border-radius: 40px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 28px;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

/* Main headline — white */
.premium-hero .hero-title {
  font-size: clamp(2.5rem, 4.8vw, 3.8rem);
  font-weight: 800;
  color: #ffffff;
  line-height: 1.12;
  margin-bottom: 24px;
  letter-spacing: -0.5px;
}

/* Accent line — animated orange gradient */
.premium-hero .hero-title span {
  display: block;
  background: linear-gradient(90deg, #fd4800 0%, #ff9640 50%, #fd4800 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: borderFlow 4s linear infinite;
}

/* Subtitle — soft white */
.premium-hero .hero-subtitle {
  font-size: clamp(1rem, 1.7vw, 1.15rem);
  color: rgba(255,255,255,0.68);
  line-height: 1.7;
  max-width: 580px;
  margin-bottom: 36px;
}

.premium-hero .hero-subtitle strong {
  color: rgba(255,255,255,0.92);
  font-weight: 700;
}

/* CTA button row */
.premium-hero .hero-actions {
  display: flex;
  justify-content: flex-start;
  gap: 16px;
  flex-wrap: wrap;
}

/* Primary button: glowing orange */
.premium-hero .theme-btn-primary {
  background: linear-gradient(135deg, #fd4800 0%, #ff6b00 100%);
  border: none;
  color: #fff;
  transition: box-shadow 0.35s ease, transform 0.3s ease;
}
.premium-hero .theme-btn-primary:hover {
  box-shadow: 0 0 40px rgba(253,72,0,0.55), 0 8px 30px rgba(253,72,0,0.3);
  transform: translateY(-3px) scale(1.02);
}

/* Outline / secondary: glass pill */
.premium-hero .theme-btn-outline {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.22);
  color: rgba(255,255,255,0.88);
  backdrop-filter: blur(10px);
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
.premium-hero .theme-btn-outline:hover {
  background: rgba(255,255,255,0.95);
  color: #001648;
  border-color: transparent;
  transform: translateY(-3px);
}

/* Right Column Graphic - Floating Skills Portal */
.hero-graphic-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 480px;
  width: 100%;
}

.skills-portal {
  position: relative;
  width: 100%;
  height: 100%;
}

/* Technical Orbital Rings */
.portal-ring-1 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 180px;
  height: 180px;
  border: 1.5px dashed rgba(253, 72, 0, 0.25);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: spinRing 20s linear infinite;
  pointer-events: none;
  z-index: 2;
}

.portal-ring-2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 230px;
  height: 230px;
  border: 1px dashed rgba(0, 22, 72, 0.12);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: spinRingInverse 28s linear infinite;
  pointer-events: none;
  z-index: 1;
}

.portal-core {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 136px;
  height: 136px;
  background: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 4px solid #ffffff;
  box-shadow: 0 15px 35px rgba(0, 22, 72, 0.12), 0 0 0 1px rgba(253, 72, 0, 0.2);
  z-index: 5;
  transition: all 0.3s ease;
}

.portal-core:hover {
  transform: translate(-50%, -50%) scale(1.06);
  box-shadow: 0 20px 45px rgba(253, 72, 0, 0.25), 0 0 0 1.5px var(--color-orange);
}

.portal-logo-center {
  max-width: 80%;
  max-height: 80%;
  object-fit: contain;
}

.portal-glow {
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: -10px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(253, 72, 0, 0.28) 0%, transparent 70%);
  z-index: -1;
  animation: pulseGlow 3s ease-in-out infinite;
}

/* Floating Skill Badges */
.floating-badge {
  position: absolute;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(0, 22, 72, 0.08);
  box-shadow: 0 8px 30px rgba(0, 22, 72, 0.06);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 30px;
  padding: 10px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-body);
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--color-navy);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  z-index: 6;
}

.floating-badge:hover {
  background: #ffffff;
  transform: scale(1.05) translateY(-5px) !important;
  z-index: 10;
}

.floating-badge img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.floating-badge:hover img {
  transform: scale(1.2) rotate(8deg);
}

/* Badge Layout Coordinates & Floating Speeds */
.badge-1 { top: 10%; left: 8%; animation: floatBadge1 5.8s ease-in-out infinite alternate; }
.badge-2 { top: 12%; right: 8%; animation: floatBadge2 6.5s ease-in-out infinite alternate; }
.badge-3 { bottom: 12%; left: 10%; animation: floatBadge3 5.3s ease-in-out infinite alternate; }
.badge-4 { bottom: 10%; right: 10%; animation: floatBadge4 6.8s ease-in-out infinite alternate; }
.badge-5 { top: 46%; left: -5%; animation: floatBadge5 7.2s ease-in-out infinite alternate; }
.badge-6 { top: 46%; right: -5%; animation: floatBadge6 6.0s ease-in-out infinite alternate; }

/* Custom Badge Brand/Accent Colors on Hover */
.badge-1:hover { border-color: rgba(139, 92, 246, 0.4); box-shadow: 0 12px 35px rgba(139, 92, 246, 0.16); }
.badge-2:hover { border-color: rgba(14, 165, 233, 0.4); box-shadow: 0 12px 35px rgba(14, 165, 233, 0.16); }
.badge-3:hover { border-color: rgba(253, 72, 0, 0.4); box-shadow: 0 12px 35px rgba(253, 72, 0, 0.16); }
.badge-4:hover { border-color: rgba(16, 185, 129, 0.4); box-shadow: 0 12px 35px rgba(16, 185, 129, 0.16); }
.badge-5:hover { border-color: rgba(245, 158, 11, 0.4); box-shadow: 0 12px 35px rgba(245, 158, 11, 0.16); }
.badge-6:hover { border-color: rgba(236, 72, 153, 0.4); box-shadow: 0 12px 35px rgba(236, 72, 153, 0.16); }

/* Asynchronous Floating Keyframes */
@keyframes floatBadge1 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-16px) translateX(6px); }
}
@keyframes floatBadge2 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-13px) translateX(-5px); }
}
@keyframes floatBadge3 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-18px) translateX(4px); }
}
@keyframes floatBadge4 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-12px) translateX(-6px); }
}
@keyframes floatBadge5 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-15px) translateX(5px); }
}
@keyframes floatBadge6 {
  0% { transform: translateY(0) translateX(0); }
  100% { transform: translateY(-14px) translateX(-4px); }
}

@keyframes pulseGlow {
  0% { transform: scale(1); opacity: 0.8; }
  50% { transform: scale(1.15); opacity: 1; }
  100% { transform: scale(1); opacity: 0.8; }
}

@keyframes spinRing {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes spinRingInverse {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(-360deg); }
}

/* ── RICH TECH BACKGROUND ─────────────────────────────────── */
.hero-bg-richtech {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
  pointer-events: none; overflow: hidden; z-index: 1;
}

.hero-circuit-svg {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
}

.hero-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  pointer-events: none;
}
.orb-orange-tl {
  width: 500px; height: 500px;
  top: -120px; right: -80px;
  background: radial-gradient(circle, rgba(253,72,0,0.09) 0%, transparent 70%);
  animation: orbPulse 8s ease-in-out infinite;
}
.orb-navy-br {
  width: 450px; height: 450px;
  bottom: 0; left: -80px;
  background: radial-gradient(circle, rgba(0,22,72,0.07) 0%, transparent 70%);
  animation: orbPulse 10s ease-in-out infinite reverse;
}
.orb-orange-mid {
  width: 300px; height: 300px;
  top: 40%; left: 35%;
  background: radial-gradient(circle, rgba(253,72,0,0.04) 0%, transparent 70%);
  animation: orbPulse 6s ease-in-out infinite 2s;
}

@keyframes orbPulse {
  0%, 100% { transform: scale(1); opacity: 0.8; }
  50% { transform: scale(1.2); opacity: 1; }
}

/* Floating tech particles */
.tech-particle {
  position: absolute; border-radius: 50%;
  background: rgba(253,72,0,0.12);
}
.tp-1 { width:8px; height:8px; top:15%; left:5%; animation: particleDrift 9s ease-in-out infinite; }
.tp-2 { width:5px; height:5px; top:65%; left:12%; background:rgba(0,22,72,0.1); animation: particleDrift 12s ease-in-out infinite 2s; }
.tp-3 { width:10px; height:10px; top:25%; right:15%; animation: particleDrift 7s ease-in-out infinite 1s; }
.tp-4 { width:6px; height:6px; top:75%; right:8%; background:rgba(0,22,72,0.1); animation: particleDrift 11s ease-in-out infinite 3s; }
.tp-5 { width:4px; height:4px; top:45%; left:25%; animation: particleDrift 8s ease-in-out infinite 0.5s; }
.tp-6 { width:7px; height:7px; bottom:20%; right:30%; background:rgba(253,72,0,0.08); animation: particleDrift 13s ease-in-out infinite 4s; }

@keyframes particleDrift {
  0%, 100% { transform: translateY(0) translateX(0); opacity: 0.6; }
  33% { transform: translateY(-18px) translateX(10px); opacity: 1; }
  66% { transform: translateY(-8px) translateX(-12px); opacity: 0.8; }
}

/* Radial portal background glow */
.portal-bg-glow {
  position: absolute; top: 50%; left: 50%;
  width: 460px; height: 460px;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(253,72,0,0.05) 0%, rgba(0,22,72,0.04) 50%, transparent 75%);
  border-radius: 50%;
  animation: orbPulse 5s ease-in-out infinite;
  z-index: 0;
}

/* ── 3-RING ORBITAL SYSTEM ────────────────────────────────── */
/* Orbit rings are transparent circles; badges counter-rotate to stay upright */
.orbit-ring {
  position: absolute; top: 50%; left: 50%;
  border-radius: 50%;
  border-style: dashed;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 2;
}

/* Ring dimensions & animation speeds */
.orbit-ring-1 {
  width: 180px; height: 180px;
  border: 1.5px dashed rgba(253,72,0,0.30);
  animation: ringOrbit 12s linear infinite;
}
.orbit-ring-2 {
  width: 300px; height: 300px;
  border: 1px dashed rgba(0,22,72,0.18);
  animation: ringOrbit 22s linear infinite reverse;
}
.orbit-ring-3 {
  width: 430px; height: 430px;
  border: 1px dashed rgba(253,72,0,0.14);
  animation: ringOrbit 35s linear infinite;
}

@keyframes ringOrbit {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Each orbit-badge glassmorphism on dark bg */
.orbit-badge {
  position: absolute;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.18);
  box-shadow: 0 4px 20px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.1);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 30px;
  padding: 7px 14px;
  display: flex; align-items: center; gap: 8px;
  font-family: var(--font-body);
  font-size: 0.78rem; font-weight: 700;
  color: #ffffff;
  white-space: nowrap;
  pointer-events: all;
  transition: box-shadow 0.3s ease, background 0.3s ease;
  z-index: 10;
}

.orbit-badge:hover {
  background: rgba(253,72,0,0.2);
  border-color: rgba(253,72,0,0.5);
  box-shadow: 0 8px 30px rgba(253,72,0,0.25);
}

.orbit-badge img {
  width: 20px; height: 20px;
  object-fit: contain; flex-shrink: 0;
}

/* ── Ring 1: 2 badges at 0° and 180° ─────────── */
/* translate(radius, 0) then move up by half badge height */
.ob-1-1 {
  top: 50%; left: 100%;
  transform: translate(-50%, -50%) /* place on ring edge */;
  animation: counterRing 12s linear infinite;
}
.ob-1-2 {
  top: 50%; left: 0%;
  transform: translate(-50%, -50%);
  animation: counterRing 12s linear infinite;
}

/* ── Ring 2: 4 badges at 0°, 90°, 180°, 270° ── */
.ob-2-1 { top: 0%; left: 50%; transform: translate(-50%, -50%); animation: counterRingRev 22s linear infinite; }
.ob-2-2 { top: 50%; left: 100%; transform: translate(-50%, -50%); animation: counterRingRev 22s linear infinite; }
.ob-2-3 { top: 100%; left: 50%; transform: translate(-50%, -50%); animation: counterRingRev 22s linear infinite; }
.ob-2-4 { top: 50%; left: 0%; transform: translate(-50%, -50%); animation: counterRingRev 22s linear infinite; }

/* ── Ring 3: 6 badges at 0°, 60°, 120°, 180°, 240°, 300° ── */
.ob-3-1 { top: 0%; left: 50%;    transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }
.ob-3-2 { top: 25%; left: 93.3%; transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }
.ob-3-3 { top: 75%; left: 93.3%; transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }
.ob-3-4 { top: 100%; left: 50%;  transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }
.ob-3-5 { top: 75%; left: 6.7%;  transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }
.ob-3-6 { top: 25%; left: 6.7%;  transform: translate(-50%, -50%); animation: counterRing 35s linear infinite; }

/* Counter-rotation keeps badge labels upright */
@keyframes counterRing {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(-360deg); }
}
@keyframes counterRingRev {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(360deg); }
}

/* ── Hero Trust Pills — glass on dark ───────────────────────── */
.hero-trust-row {
  display: flex; flex-wrap: wrap; gap: 10px;
  margin-bottom: 28px;
}
.hero-trust-pill {
  display: flex; align-items: center; gap: 6px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 20px;
  padding: 6px 14px;
  font-family: var(--font-body);
  font-size: 0.82rem; font-weight: 600;
  color: rgba(255,255,255,0.82);
  backdrop-filter: blur(8px);
  transition: background 0.25s ease, border-color 0.25s ease;
}
.hero-trust-pill:hover {
  background: rgba(253,72,0,0.15);
  border-color: rgba(253,72,0,0.35);
}
.hero-trust-pill svg { color: #4ade80; flex-shrink: 0; }

/* ── Hero Actions icon ────────────────────────────────────────── */
.theme-btn-primary svg { margin-right: 6px; vertical-align: middle; }

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 1199px) {
  .orbit-ring-3 { width: 380px; height: 380px; }
  .orbit-ring-2 { width: 260px; height: 260px; }
  .orbit-ring-1 { width: 155px; height: 155px; }
  .hero-graphic-wrap { height: 440px; }
}
@media (max-width: 991px) {
  .hero-graphic-wrap { height: 380px; }
  .orbit-ring-3 { width: 320px; height: 320px; }
  .orbit-ring-2 { width: 210px; height: 210px; }
  .orbit-ring-1 { width: 120px; height: 120px; }
  .hero-trust-row { justify-content: center; }
}
@media (max-width: 576px) {
  .hero-graphic-wrap { height: 300px; }
  .orbit-ring-3 { width: 260px; height: 260px; }
  .orbit-ring-2 { width: 170px; height: 170px; }
  .orbit-ring-1 { display: none; }
  .orbit-badge { padding: 5px 10px; font-size: 0.72rem; }
  .orbit-badge img { width: 16px; height: 16px; }
}


/* Hero Wave — navy fill for clean dark→section transition */
.premium-hero .hero-wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.premium-hero .hero-wave svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 120px;
}

.premium-hero .hero-wave .shape-fill {
  fill: #001648;
}

/* ── PREMIUM CAPSULE STATS ROW ──────────────────────────────── */
.premium-stats-bar-section {
  position: relative;
  padding: 0;
  z-index: 10;
  margin-top: -65px; /* Overlap into the wave curve */
}

.stats-capsule {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  background: linear-gradient(135deg, var(--color-navy) 0%, #012269 100%);
  border-radius: 20px;
  padding: 30px 40px;
  border: 1.5px solid rgba(253, 72, 0, 0.35);
  box-shadow: 0 15px 45px rgba(0, 22, 72, 0.25), 0 0 25px rgba(253, 72, 0, 0.1);
  gap: 20px;
}

.stat-capsule-item {
  display: flex;
  align-items: center;
  gap: 16px;
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.stat-capsule-item:hover {
  transform: translateY(-2px);
}

.stat-capsule-item:last-child {
  border-right: none;
}

.stat-capsule-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(253, 72, 0, 0.12);
  color: var(--color-orange);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.stat-capsule-item:hover .stat-capsule-icon {
  background: var(--color-orange);
  color: #ffffff;
  box-shadow: 0 0 15px rgba(253, 72, 0, 0.4);
}

.stat-capsule-icon svg {
  width: 22px;
  height: 22px;
}

.google-icon-wrap {
  background: rgba(255, 255, 255, 0.08);
}

.google-svg {
  width: 20px;
  height: 20px;
}

.stat-capsule-details {
  display: flex;
  flex-direction: column;
}

.stat-capsule-number {
  font-family: var(--font-title);
  font-size: 1.55rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1.2;
}

.stat-capsule-label {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.65);
  font-weight: 500;
  margin-top: 2px;
}

.stars-gold {
  color: #fbbf24;
  font-size: 0.85rem;
  margin-left: 3px;
  letter-spacing: 1px;
}

/* Responsive Overrides */
@media (max-width: 1199px) {
  .premium-hero .hero-grid {
    grid-template-columns: 1fr;
    gap: 40px;
    text-align: center;
  }
  .premium-hero .hero-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
  }
  .premium-hero .hero-actions {
    justify-content: center;
  }
  .hero-graphic-wrap {
    height: 380px;
    max-width: 500px;
    margin: 0 auto;
  }
  .badge-1 { left: 5%; }
  .badge-2 { right: 5%; }
  .badge-5 { left: -10%; }
  .badge-6 { right: -10%; }
  
  .stats-capsule {
    grid-template-columns: repeat(3, 1fr);
  }
  .stat-capsule-item:nth-child(3) {
    border-right: none;
  }
}

@media (max-width: 991px) {
  .premium-hero {
    padding: 130px 0 170px;
    min-height: auto;
  }
  .premium-stats-bar-section {
    margin-top: -55px;
  }
  .stats-capsule {
    grid-template-columns: repeat(2, 1fr);
    padding: 24px;
    gap: 24px 15px;
  }
  .stat-capsule-item {
    border-right: none;
  }
  .stat-capsule-item:nth-child(even) {
    border-right: none;
  }
  .stat-capsule-item:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-bottom: 15px;
  }
  .hero-scroll-indicator { display: none; }
}

@media (max-width: 576px) {
  .premium-hero {
    padding: 110px 0 140px;
    min-height: auto;
  }
  .premium-hero .hero-wave svg {
    height: 60px;
  }
  .premium-stats-bar-section {
    margin-top: -35px;
  }
  .stats-capsule {
    grid-template-columns: 1fr;
    padding: 20px;
    gap: 15px;
  }
  .stat-capsule-item {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-bottom: 12px;
  }
  .stat-capsule-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .floating-badge {
    padding: 8px 12px;
    font-size: 0.8rem;
  }
}

/* --- HIRING PARTNERS MARQUEE SECTION --- */
.partners-section {
  background: #ffffff;
  padding: 40px 0 50px 0;
  overflow: hidden;
  position: relative;
}

.partners-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at 50% 50%, rgba(253, 72, 0, 0.04) 0%, transparent 60%);
  pointer-events: none;
}

.partners-badge {
  display: inline-block;
  background: rgba(253, 72, 0, 0.1);
  color: var(--color-orange);
  padding: 5px 14px;
  border-radius: 30px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.marquee-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  margin-top: 24px;
}

.marquee-row {
  display: flex;
  overflow: hidden;
  width: 100%;
  user-select: none;
}

/* Gradient fades on the sides of the marquee */
.partners-section::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #ffffff 0%, transparent 8%, transparent 92%, #ffffff 100%);
  z-index: 2;
}

.marquee-track-left {
  display: flex;
  gap: 16px;
  width: max-content;
  animation: scrollLeft 40s linear infinite;
}

.marquee-track-right {
  display: flex;
  gap: 16px;
  width: max-content;
  animation: scrollRight 40s linear infinite;
}

/* Pause animation on hover */
.marquee-row:hover .marquee-track-left,
.marquee-row:hover .marquee-track-right {
  animation-play-state: paused;
}

.partner-card {
  background: #ffffff;
  border-radius: 10px;
  padding: 10px 24px;
  min-width: 150px;
  height: 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 1px solid rgba(0, 22, 72, 0.08);
  box-shadow: 0 3px 12px rgba(0, 22, 72, 0.02);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  flex-shrink: 0;
  cursor: pointer;
}

.partner-card:hover {
  transform: translateY(-4px) scale(1.02);
  border-color: var(--color-orange);
  box-shadow: 0 8px 20px rgba(253, 72, 0, 0.18);
}

.partner-logo {
  max-width: 90%;
  max-height: 38px;
  object-fit: contain;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.partner-card:hover .partner-logo {
  transform: scale(1.05);
}

@keyframes scrollLeft {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@keyframes scrollRight {
  0% { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}

@media (max-width: 768px) {
  .partners-section {
    padding: 60px 0;
  }
  .partner-card {
    min-width: 150px;
    height: 75px;
    padding: 10px 20px;
  }
  .partner-logo {
    max-height: 40px;
  }
}

/* =========================================================================
   6. PREMIUM QUICK ENQUIRY LEAD FORM (TWO-COLUMN GRID)
   ========================================================================= */
.lead-form-section {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  position: relative;
  overflow: hidden;
}

/* Add a subtle grid/dot pattern overlay behind lead section */
.lead-form-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(rgba(0, 22, 72, 0.02) 1px, transparent 1px);
  background-size: 20px 20px;
  pointer-events: none;
  z-index: 1;
}

.lead-form-wrapper {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 2;
}

.lead-form-info {
  padding-right: 20px;
}

.lead-form-badge {
  display: inline-block;
  background: rgba(253, 72, 0, 0.08);
  color: var(--color-orange);
  font-family: var(--font-title);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 2px;
  padding: 6px 16px;
  border-radius: 30px;
  text-transform: uppercase;
  margin-bottom: 20px;
  border: 1px solid rgba(253, 72, 0, 0.15);
}

.lead-title {
  font-family: var(--font-title);
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--color-navy);
  line-height: 1.2;
  margin-bottom: 20px;
}

.lead-title span {
  color: var(--color-orange);
}

.lead-text {
  font-family: var(--font-body);
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 35px;
}

/* Contact info item cards */
.lead-contact-card {
  display: flex;
  align-items: center;
  gap: 18px;
  background: #ffffff;
  padding: 16px 22px;
  border-radius: 12px;
  border: 1px solid rgba(0, 22, 72, 0.05);
  box-shadow: 0 4px 15px rgba(0, 22, 72, 0.02);
  transition: all 0.3s ease;
  text-decoration: none;
}

.lead-contact-card:hover {
  transform: translateY(-3px);
  border-color: rgba(253, 72, 0, 0.25);
  box-shadow: 0 10px 25px rgba(0, 22, 72, 0.06);
}

.lead-contact-icon {
  width: 44px;
  height: 44px;
  background: rgba(253, 72, 0, 0.08);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-orange);
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.lead-contact-card:hover .lead-contact-icon {
  background: var(--color-orange);
  color: #ffffff;
}

.lead-contact-details h4 {
  font-family: var(--font-title);
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #64748b;
  margin: 0 0 3px 0;
}

.lead-contact-details p {
  font-family: var(--font-body);
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--color-navy);
  margin: 0;
}

/* Form Box styles */
.lead-form-box {
  background: #ffffff;
  border: 1px solid rgba(0, 22, 72, 0.08);
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 25px 50px -12px rgba(0, 22, 72, 0.08);
  position: relative;
  transition: all 0.3s ease;
}

.lead-form-box:hover {
  box-shadow: 0 30px 60px -10px rgba(0, 22, 72, 0.12);
  border-color: rgba(253, 72, 0, 0.15);
}

.lead-form-box .form-group {
  margin-bottom: 22px;
}

.lead-form-box .form-label {
  font-family: var(--font-title);
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--color-navy);
  margin-bottom: 8px;
  display: block;
}

.lead-form-box .form-control {
  width: 100%;
  padding: 12px 18px;
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--color-navy);
  background: #f8fafc;
  border: 1.5px solid rgba(0, 22, 72, 0.08);
  border-radius: 10px;
  transition: all 0.3s ease;
}

.lead-form-box .form-control:focus {
  background: #ffffff;
  border-color: var(--color-orange);
  box-shadow: 0 0 0 4px rgba(253, 72, 0, 0.1);
  outline: none;
}

.lead-form-box .theme-btn-primary {
  margin-top: 10px;
  padding: 14px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  box-shadow: 0 8px 20px rgba(253, 72, 0, 0.25);
  transition: all 0.3s ease;
}

.lead-form-box .theme-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(253, 72, 0, 0.35);
}

/* Responsive constraints */
@media (max-width: 991px) {
  .lead-form-wrapper {
    grid-template-columns: 1fr;
    gap: 45px;
  }
  
  .lead-form-info {
    padding-right: 0;
    text-align: center;
  }
  
  .lead-form-badge {
    margin-left: auto;
    margin-right: auto;
  }
  
  .lead-contact-card {
    justify-content: flex-start;
    text-align: left;
  }
  
  .lead-form-box {
    padding: 30px;
  }
  
  .lead-title {
    font-size: 2rem;
  }
}

/* --- SUCCESS STORIES PAGE STYLES --- */
.stories-page-card {
  background: #ffffff;
  border: 1px solid rgba(0, 22, 72, 0.08);
  padding: 30px;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 6px 20px rgba(0, 22, 72, 0.02);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
}

.stories-page-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 35px rgba(0, 22, 72, 0.06);
  border-color: rgba(253, 72, 0, 0.2);
}

.story-profile-row {
  display: flex;
  gap: 15px;
  align-items: center;
  margin-bottom: 20px;
}

.story-profile-img {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--color-orange);
  flex-shrink: 0;
}

.story-profile-placeholder {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: var(--color-bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: var(--color-orange);
  border: 1px solid var(--color-border);
  flex-shrink: 0;
}

.story-offer-info {
  margin-bottom: 15px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.story-placed-at {
  font-size: 0.9rem;
  color: var(--color-navy);
  font-weight: 600;
}

.story-placed-at strong {
  color: var(--color-orange);
}

.story-salary-badge {
  background: #fff7ed;
  color: #c2410c;
  border: 1px solid #ffedd5;
  width: fit-content;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 4px;
}

.story-card-text {
  font-size: 0.92rem;
  line-height: 1.65;
  color: var(--color-text-dim);
  font-style: italic;
  margin-bottom: 20px;
}

/* --- PREMIUM PAGINATION STYLING --- */
.pagination-wrap {
  margin-top: 50px;
  display: flex;
  justify-content: center;
  gap: 10px;
  align-items: center;
  grid-column: 1 / -1;
  width: 100%;
}

.pagination-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  background: #ffffff;
  border: 1px solid var(--color-border);
  color: var(--color-navy);
  border-radius: 30px;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 22, 72, 0.02);
}

.pagination-btn:hover:not(.pagination-disabled) {
  background: var(--color-navy);
  color: #ffffff;
  border-color: var(--color-navy);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0, 22, 72, 0.12);
}

.pagination-btn.pagination-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.pagination-number {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  background: #ffffff;
  border: 1px solid var(--color-border);
  color: var(--color-navy);
  border-radius: 50%;
  font-weight: 700;
  font-size: 0.92rem;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 22, 72, 0.02);
}

.pagination-number:hover {
  background: rgba(0, 22, 72, 0.05);
  color: var(--color-navy);
}

.pagination-number.active {
  background: var(--color-orange);
  color: #ffffff;
  border-color: var(--color-orange);
  box-shadow: 0 6px 18px rgba(253, 72, 0, 0.3);
}

/* --- HIRING PARTNERS PAGE --- */
.hiring-partner-card {
  background: #ffffff;
  border: 1px solid rgba(0, 22, 72, 0.08);
  border-radius: 12px;
  padding: 20px 15px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 110px;
  box-shadow: 0 4px 15px rgba(0, 22, 72, 0.02);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.hiring-partner-card:hover {
  transform: translateY(-5px);
  border-color: rgba(253, 72, 0, 0.2);
  box-shadow: 0 10px 25px rgba(0, 22, 72, 0.06);
}

.hiring-partner-logo {
  max-width: 85%;
  max-height: 42px;
  object-fit: contain;
  margin-bottom: 6px;
}

.hiring-partner-name {
  color: var(--color-navy);
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 1.05rem;
  letter-spacing: 0.5px;
  margin-bottom: 4px;
}

.hiring-partner-badge {
  color: var(--color-orange);
  font-weight: 600;
  font-size: 0.72rem;
}
