/* ================================================================
   Neriah MBBS — White Theme Enhancement
   Beautiful light mode with premium UI/UX effects
   ================================================================ */

/* ── Card Elevation System ── */
.card, [class*="-card"], [class*="card-"], .college-card, .country-card, .cc, .step-card, .faq-item, .contact-card, .team-card, .stat-card {
  background: #ffffff !important;
  box-shadow: 0 2px 12px rgba(26,37,64,.06), 0 1px 3px rgba(26,37,64,.04) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}
.card:hover, [class*="-card"]:hover, .college-card:hover, .country-card:hover, .cc:hover, .step-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(26,37,64,.1), 0 4px 12px rgba(26,37,64,.06) !important;
}

/* ── Surface & Section Backgrounds ── */
body {
  background: #f8f9fc;
}
.bg-alt, section.bg-alt {
  background: linear-gradient(180deg, #f0f4fc 0%, #edf2ff 100%) !important;
}
.trust-bar {
  background: #fff !important;
  border-top: 1px solid #e8edf5 !important;
  border-bottom: 1px solid #e8edf5 !important;
  box-shadow: 0 2px 12px rgba(26,37,64,.04) !important;
}

/* ── Typography Fixes for Light Mode ── */
h1, h2, h3, h4, h5, h6,
.hero-title, .sec-title, h2.sec-title,
.cc-name, .college-name, .country-name,
.faq-q {
  color: #1a2540 !important;
}

/* ── Hero & Page Banner — preserve white text on dark backgrounds ── */
.hero-title { color: #ffffff !important; }
.page-banner h1,
.page-banner .pb-title,
.faq-hero h1,
.faq-hero h2,
.pb-title,
.pb-eyebrow { color: #ffffff !important; }
.page-banner h1 em,
.faq-hero h1 em,
.pb-title em {
  color: inherit !important;
  -webkit-text-fill-color: transparent !important;
}
.section-banner-heading h1,
.section-banner-heading h2,
.section-banner-heading h3,
.section-banner-heading .sec-title {
  color: #ffffff !important;
}
.pb-content h1[style*="color:var(--text)"],
.pb-content h1 {
  color: #ffffff !important;
}

/* ── Form Inputs ── */
input, select, textarea {
  background: #ffffff !important;
  border: 1.5px solid #dde4f0 !important;
  color: #1a2540 !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
  transition: border-color .2s, box-shadow .2s !important;
}
input:focus, select:focus, textarea:focus {
  border-color: #1d4ed8 !important;
  box-shadow: 0 0 0 3px rgba(29,78,216,.1) !important;
  outline: none !important;
}
input::placeholder, textarea::placeholder {
  color: #8fa3bc !important;
}
select option {
  background: #ffffff !important;
  color: #1a2540 !important;
}

/* ── Tabs & Filters ── */
.tab-btn, .sub-tab, .filter-btn {
  background: #f0f4fc !important;
  border: 1.5px solid #dde4f0 !important;
  color: #5a6d8a !important;
  transition: all .2s !important;
}
.tab-btn:hover, .sub-tab:hover, .filter-btn:hover {
  background: #e8edf8 !important;
  border-color: #b8c8e8 !important;
  color: #1a2540 !important;
}
.tab-btn.active, .sub-tab.active, .filter-btn.active {
  background: linear-gradient(135deg,#1d4ed8,#2563eb) !important;
  border-color: #1d4ed8 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(29,78,216,.3) !important;
}

/* ── Trust Bar Items ── */
.trust-text {
  color: #5a6d8a !important;
}
.trust-text strong {
  color: #1a2540 !important;
}

/* ── Footer ── */
footer {
  background: #1a2540 !important;
  border-top: none !important;
}
footer h4 {
  color: #ffffff !important;
  border-bottom-color: rgba(255,255,255,.1) !important;
}
footer p, footer .footer-brand p {
  color: #9dafc7 !important;
}
footer .footer-col ul li a {
  color: #9dafc7 !important;
}
footer .footer-col ul li a:hover {
  color: #c8922a !important;
}
footer .edu-stat-pill {
  background: rgba(200,146,42,.08) !important;
  border-color: rgba(200,146,42,.2) !important;
  color: #9dafc7 !important;
}
footer .edu-stat-pill .es-val {
  color: #c8922a !important;
}
footer .footer-divider, footer .footer-bottom {
  border-color: rgba(255,255,255,.08) !important;
}
footer .social-btn {
  border-color: rgba(255,255,255,.1) !important;
  background: rgba(255,255,255,.05) !important;
  color: #9dafc7 !important;
}
footer .footer-bottom {
  color: #6b82a0 !important;
}

/* ── FAQ Accordion ── */
.faq-item {
  border: 1.5px solid #e8edf5 !important;
  border-radius: 14px !important;
  margin-bottom: 8px !important;
  overflow: hidden !important;
}
.faq-q {
  color: #1a2540 !important;
  font-weight: 600 !important;
}
.faq-a {
  color: #5a6d8a !important;
}

/* ── Country Cards ── */
.country-card, .cc {
  border-radius: 16px !important;
}
.cc-name, .country-name {
  color: #1a2540 !important;
  font-weight: 700 !important;
}
.cc-fee strong, .country-fee {
  color: #c8922a !important;
}

/* ── College Cards ── */
.college-card {
  background: #ffffff !important;
  border: 1.5px solid #e8edf5 !important;
}
.cc-name {
  color: #1a2540 !important;
  font-weight: 700 !important;
}
.cc-country {
  color: #5a6d8a !important;
}
.cc-fee-label {
  color: #8fa3bc !important;
}
.cc-fee-value {
  color: #1a2540 !important;
  font-weight: 700 !important;
}

/* ================================================================
   ██████  PROCESS STEPS — COMPLETE FIX
   The step titles were invisible because var(--text) resolved to
   white (#fff) from the dark base theme. Force all text dark.
   ================================================================ */
.process-section {
  background: linear-gradient(180deg, #f0f4fc 0%, #edf2ff 100%) !important;
}

/* Step wrapper card */
.step {
  background: #ffffff !important;
  border: 1.5px solid #e8edf5 !important;
  border-radius: 16px !important;
  box-shadow: 0 2px 12px rgba(26,37,64,.06) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}
.step:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(26,37,64,.1) !important;
  border-color: rgba(29,78,216,.2) !important;
}

/* Circle number badge */
.step-num {
  background: linear-gradient(135deg, #1d4ed8, #2563eb) !important;
  color: #090909 !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 16px rgba(29,78,216,.3) !important;
}

/* ★★★ THE MAIN FIX — title was white on white ★★★ */
.step-title,
.step > .step-title,
.step .step-content .step-title,
.process-steps .step-title,
.process-section .step-title {
  color: #1a2540 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  margin-bottom: 6px !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-text-fill-color: #1a2540 !important;
}

/* Step description text */
.step-text,
.step > .step-text,
.step .step-content .step-text,
.process-steps .step-text,
.process-section .step-text {
  color: #5a6d8a !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-text-fill-color: #5a6d8a !important;
}
/* ── END PROCESS FIX ── */

/* ── Stat / Achievement Cards ── */
.stat-card, .achievement-card {
  background: linear-gradient(135deg, #f8f9fc, #edf2ff) !important;
}
.stat-num, .stat-value {
  color: #c8922a !important;
}

/* ── Testimonial Cards ── */
.testimonial-card {
  background: #ffffff !important;
  border: 1.5px solid #e8edf5 !important;
}
.t-name {
  color: #1a2540 !important;
}
.t-college, .t-role, .t-info {
  color: #5a6d8a !important;
}
.t-text, .testimonial-text {
  color: #3d5068 !important;
}

/* ── Why Cards ── */
.why-card {
  background: #ffffff !important;
  border: 1.5px solid #e8edf5 !important;
}
.why-title {
  color: #1a2540 !important;
  font-weight: 700 !important;
}
.why-text {
  color: #5a6d8a !important;
}

/* ── Enquiry / Contact Section ── */
.enquiry-info h2,
.enquiry-info .sec-title {
  color: #1a2540 !important;
}
.enquiry-info p {
  color: #5a6d8a !important;
}
.contact-item .ci-val {
  color: #1a2540 !important;
}
.contact-item .ci-text {
  color: #8fa3bc !important;
}
.form-card {
  background: #ffffff !important;
  border: 1.5px solid #e8edf5 !important;
  box-shadow: 0 8px 48px rgba(26,37,64,.1) !important;
}
.form-title {
  color: #1a2540 !important;
}
.form-group label {
  color: #5a6d8a !important;
}
.cat-btn {
  background: #f0f4fc !important;
  border: 1.5px solid #dde4f0 !important;
  color: #5a6d8a !important;
}
.cat-btn.active {
  background: linear-gradient(135deg, rgba(29,78,216,.12), rgba(6,182,212,.08)) !important;
  border-color: rgba(29,78,216,.4) !important;
  color: #1d4ed8 !important;
}

/* ── Seminar Popup ── */
.seminar-popup, .popup-inner, .seminar-modal {
  background: #ffffff !important;
  border: 1px solid #e8edf5 !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.15) !important;
}

/* ── Login Modal ── */
.modal-box, .login-modal, .otp-modal {
  background: #ffffff !important;
  border: 1px solid #e8edf5 !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.15) !important;
}
.modal-box h2, .login-modal h2, .modal-title {
  color: #1a2540 !important;
}
.modal-overlay, .modal-backdrop {
  background: rgba(26,37,64,.5) !important;
  backdrop-filter: blur(6px) !important;
}

/* ── Scrollbar (light) ── */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #f0f4fc;
}
::-webkit-scrollbar-thumb {
  background: #c0ccde;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #9dafc7;
}

/* ── Selection Color ── */
::selection {
  background: rgba(29,78,216,.15);
  color: #1a2540;
}

/* ── Animation: Smooth Reveal ── */
.fade-up {
  transition: opacity .65s cubic-bezier(.16,1,.3,1), transform .65s cubic-bezier(.16,1,.3,1) !important;
}

/* ── Gradient Accent Lines ── */
section .section-header::after {
  content: '';
  display: block;
  width: 64px;
  height: 3px;
  background: linear-gradient(90deg, #c8922a, #1d4ed8);
  border-radius: 2px;
  margin: 16px auto 0;
}

/* ── Hover Glow on CTA buttons ── */
.btn-primary, .nav-cta {
  position: relative;
  overflow: hidden;
}
.btn-primary::after, .nav-cta::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.15), transparent);
  opacity: 0;
  transition: opacity .3s;
}
.btn-primary:hover::after, .nav-cta:hover::after {
  opacity: 1;
}

/* ── Active page indicator on nav ── */
.nav-links a.active {
  position: relative;
}
.nav-links a.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 2px;
  background: #c8922a;
  border-radius: 1px;
}

/* ── Mobile nav white fixes ── */
@media(max-width:768px) {
  .mobile-nav {
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 8px 32px rgba(26,37,64,.1) !important;
  }
  .mobile-nav a {
    color: #1a2540 !important;
    border-bottom-color: rgba(0,0,0,.05) !important;
  }

  /* Mobile step text fix */
  .step-title,
  .step .step-title,
  .process-steps .step-title {
    color: #1a2540 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #1a2540 !important;
  }
  .step-text,
  .step .step-text,
  .process-steps .step-text {
    color: #5a6d8a !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-text-fill-color: #5a6d8a !important;
  }
}

/* ── Section Banner Headings — White text on dark background ── */
.section-banner-heading {
  background: linear-gradient(135deg, #1a2540 0%, #1d4ed8 100%) !important;
  border-radius: 16px !important;
  padding: 32px 40px !important;
  margin-bottom: 40px !important;
  text-align: center !important;
  box-shadow: 0 8px 32px rgba(29,78,216,.18) !important;
}
.section-banner-heading .section-tag {
  background: rgba(255,255,255,.12) !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  color: #ffffff !important;
}
.section-banner-heading h2.sec-title,
.section-banner-heading h2 {
  color: #ffffff !important;
  font-size: clamp(22px, 3vw, 38px) !important;
}
.section-banner-heading h2.sec-title span,
.section-banner-heading h2 span {
  color: #e8a83a !important;
}
.section-banner-heading .sec-sub {
  color: rgba(255,255,255,.82) !important;
}
.section-banner-heading::after {
  background: linear-gradient(90deg, #e8a83a, rgba(255,255,255,.5)) !important;
}
.section-banner-heading .enquiry-info-title {
  color: #ffffff !important;
}

/* ── General muted text & labels ── */
.cc-country,
.t-info,
.why-text,
.step-text,
.faq-a,
.sec-sub {
  color: #5a6d8a !important;
}

/* ── Section tags (pills above headings) ── */
.section-tag {
  display: inline-block;
  background: rgba(29,78,216,.08);
  border: 1px solid rgba(29,78,216,.15);
  color: #1d4ed8 !important;
  padding: 5px 14px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 12px;
}