/* ==========================================================================
   NIIT Digital Library — ClassyNav menu layout reconstruction
   Loaded LAST (after style.css) so it overrides the high-specificity theme.
   The original css/classy-nav.css (menu layout) was never archived by Wayback.
   ========================================================================== */

/* Navbar row: logo + title + menu */
.classy-nav-container .classy-navbar {
  display: flex !important;
  align-items: center;
  justify-content: flex-start !important;
  gap: 10px;
}
.classy-nav-container .classy-navbar .nav-brand { max-width: 70px !important; flex: 0 0 auto; }
.classy-nav-container .classy-navbar > h4 {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  color: #16305c;
  flex: 1 1 auto;
}

/* ---------- Desktop horizontal menu ---------- */
@media (min-width: 992px) {
  .classy-nav-container .classy-navbar-toggler { display: none !important; }
  .classy-nav-container .classycloseIcon { display: none !important; }

  .classy-nav-container .classy-menu {
    display: flex !important;
    align-items: center;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: auto !important;
    background: transparent !important;
    transform: none !important;
  }

  .classy-nav-container .classynav > ul {
    display: flex !important;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .classy-nav-container .classynav > ul > li { position: relative; }
  .classy-nav-container .classynav > ul > li > a {
    display: block;
    padding: 0 18px !important;
    line-height: 80px !important;
    height: 80px;
    font-weight: 700;
    white-space: nowrap;
  }

  /* Dropdown panels */
  .classy-nav-container .classynav ul li .dropdown {
    position: absolute !important;
    top: 100% !important;
    left: 0;
    min-width: 230px;
    margin: 0;
    padding: 8px 0 !important;
    list-style: none;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,.14);
    border-top: 3px solid #77b122;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all .22s ease;
    z-index: 999;
    overflow: visible; /* allow nested (3rd-level) submenus to pop out */
  }
  .classy-nav-container .classynav ul li:hover > .dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0);
  }
  .classy-nav-container .classynav ul li .dropdown li {
    width: 230px;
    position: relative;
    float: none;
  }
  .classy-nav-container .classynav ul li .dropdown li a {
    display: block !important;
    padding: 9px 20px !important;
    height: auto !important;
    line-height: 1.45 !important;
    font-size: 14px;
    white-space: normal;
    text-transform: capitalize;
  }
  .classy-nav-container .classynav ul li .dropdown li a:hover { background: #f0f6ef; }

  /* Third-level dropdown (journal lists) opens to the right; scrolls if long */
  .classy-nav-container .classynav ul li .dropdown li .dropdown {
    top: 0 !important;
    left: 100% !important;
    border-top: none;
    border-left: 3px solid #77b122;
    max-height: 80vh;
    overflow-y: auto;
    overflow-x: hidden;
  }
}

/* ==========================================================================
   Owl Carousel core layout (the @import'd css/owl.carousel.min.css does not
   apply on this server, so the essential rules are inlined here)
   ========================================================================== */
.owl-carousel { display: block; width: 100%; z-index: 1; position: relative; }
.owl-carousel .owl-stage-outer { position: relative; overflow: hidden; -webkit-transform: translate3d(0,0,0); }
.owl-carousel .owl-stage { position: relative; -ms-touch-action: pan-Y; touch-action: manipulation; }
.owl-carousel .owl-stage::after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.owl-carousel .owl-item { position: relative; min-height: 1px; float: left; -webkit-backface-visibility: hidden; -webkit-tap-highlight-color: transparent; }
.owl-carousel .owl-item img { display: block; width: 100%; }
.owl-carousel.owl-loaded { display: block; }
.owl-carousel.owl-hidden { opacity: 0; }
.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled { display: none; }
.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next { cursor: pointer; }
.owl-theme .owl-dots { text-align: center; margin-top: 10px; }
.owl-theme .owl-dots .owl-dot { display: inline-block; }
.owl-theme .owl-dots .owl-dot span {
  width: 10px; height: 10px; margin: 5px 6px; background: rgba(255,255,255,.5);
  display: block; border-radius: 50%; transition: all .2s;
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span { background: #fff; }

/* ---------- Static hero ---------- */
.hero-area { overflow: hidden; position: relative; }
.hero-area .single-welcome-slides {
  position: relative;
  height: 520px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  display: flex;
  align-items: center;
}
.hero-area .single-welcome-slides.bg-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8,22,48,.88), rgba(8,22,48,.55));
  z-index: 1;
}
.hero-area .single-welcome-slides .container { position: relative; z-index: 2; height: 100%; }
.hero-area .row { display: flex; height: 100%; align-items: center; }
.hero-area .welcome-content { color: #fff; max-width: 780px; }
.hero-area .welcome-content h2 { font-size: 44px; font-weight: 800; margin: 0 0 18px; color: #fff; line-height: 1.15; }
.hero-area .welcome-content p { font-size: 17px; color: #e9f0fa; margin: 0; }
.hero-area .famie-btn {
  display: inline-block; margin-top: 26px;
  background: #77b122; color: #fff;
  padding: 13px 36px; border-radius: 6px;
  font-weight: 700; text-transform: uppercase; letter-spacing: .5px;
  transition: all .2s;
}
.hero-area .famie-btn:hover { background: #ffd24d; color: #16305c; }
@media (max-width: 767px){
  .hero-area .single-welcome-slides { height: 400px !important; }
  .hero-area .welcome-content h2 { font-size: 30px; }
}

/* WOW.js animated elements: force visible (animate.css isn't fully loaded via
   the @import chain, so animations never run and elements stay hidden) */
.wow {
  visibility: visible !important;
  opacity: 1 !important;
  animation-name: none !important;
  -webkit-animation-name: none !important;
}

/* Services section layout safety */
.services { padding: 70px 0; text-align: center; }
.services > .container > h2 { color: #16305c; font-size: 32px; margin-bottom: 12px; }
.services .row { display: flex; flex-wrap: wrap; }
.services .row > [class*="col-"] { padding: 24px 15px; }
.services .row h4 { color: #16305c; font-size: 17px; margin: 16px 0 10px; }
.services i, .services .ico {
  height: 80px; width: 80px; font-size: 30px; line-height: 30px; padding: 25px 0;
  border-radius: 50%; background: #2f6db5; color: #fff; display: inline-block; text-align: center;
}

/* Footer safety */
.footer { background: #16305c; padding: 50px 0 30px; }
.footer h4, .footer p { color: #fff; }
.footer i { color: #ffd24d; margin-right: 8px; }

/* Small clean-ups */
.search-form { display: none !important; }
#searchIcon { margin-left: 14px; color: #16305c; cursor: pointer; }
/* Prevent horizontal scrollbar */
html, body { overflow-x: hidden; max-width: 100%; }
