/* ==========================================================================
 *  Project       : Shri Guru Ram Rai Institute of Medical & Health Sciences
 *  Author        : Web Design & Development Team, SMIH
 *  Website       : https://sgrrmc.com
 *  File          : main.css
 *  Description   : Core stylesheet for SGRRIM&HS website
 *  Created On    : July 26, 2025
 *  Last Updated  : -
 *  Version       : 1.0.0
 * ==========================================================================
 */
  /*
  INDEX
  1. HEADER
  2. MAIN MENU
  3. BANNER SECTION
  4. ABOUT SECTION
  5. SGRRMC COURSES
  7. SGRRMC USP
  8. SGRRMC CAMPUS VIDEO
  9. SGRRMC FOOTER 
  */


  body {
      font-family: 'Metropolis', sans-serif;
  }

  a {
      text-decoration: none
  }

  .mt--0 {
      margin-top: 0px !important;
  }

  .mb--0 {
      margin-bottom: 0px !important;
  }

  .ml--0 {
      margin-left: 0px !important;
  }

  .mr--0 {
      margin-right: 0px !important;
  }

  .pt--0 {
      padding-top: 0px !important;
  }

  .pb--0 {
      padding-bottom: 0px !important;
  }

  .pl--0 {
      padding-left: 0px !important;
  }

  .pr--0 {
      padding-right: 0px !important;
  }

  .mt--5 {
      margin-top: 5px !important;
  }

  .mb--5 {
      margin-bottom: 5px !important;
  }

  .ml--5 {
      margin-left: 5px !important;
  }

  .mr--5 {
      margin-right: 5px !important;
  }

  .pt--5 {
      padding-top: 5px !important;
  }

  .pb--5 {
      padding-bottom: 5px !important;
  }

  .pl--5 {
      padding-left: 5px !important;
  }

  .pr--5 {
      padding-right: 5px !important;
  }

  .mt--10 {
      margin-top: 10px !important;
  }

  .mb--10 {
      margin-bottom: 10px !important;
  }

  .ml--10 {
      margin-left: 10px !important;
  }

  .mr--10 {
      margin-right: 10px !important;
  }

  .pt--10 {
      padding-top: 10px !important;
  }

  .pb--10 {
      padding-bottom: 10px !important;
  }

  .pl--10 {
      padding-left: 10px !important;
  }

  .pr--10 {
      padding-right: 10px !important;
  }

  .mt--15 {
      margin-top: 15px !important;
  }

  .mb--15 {
      margin-bottom: 15px !important;
  }

  .ml--15 {
      margin-left: 15px !important;
  }

  .mr--15 {
      margin-right: 15px !important;
  }

  .pt--15 {
      padding-top: 15px !important;
  }

  .pb--15 {
      padding-bottom: 15px !important;
  }

  .pl--15 {
      padding-left: 15px !important;
  }

  .pr--15 {
      padding-right: 15px !important;
  }

  .mt--20 {
      margin-top: 20px !important;
  }

  .mb--20 {
      margin-bottom: 20px !important;
  }

  .ml--20 {
      margin-left: 20px !important;
  }

  .mr--20 {
      margin-right: 20px !important;
  }

  .pt--20 {
      padding-top: 20px !important;
  }

  .pb--20 {
      padding-bottom: 20px !important;
  }

  .pl--20 {
      padding-left: 20px !important;
  }

  .pr--20 {
      padding-right: 20px !important;
  }

  .mt--25 {
      margin-top: 25px !important;
  }

  .mb--25 {
      margin-bottom: 25px !important;
  }

  .ml--25 {
      margin-left: 25px !important;
  }

  .mr--25 {
      margin-right: 25px !important;
  }

  .pt--25 {
      padding-top: 25px !important;
  }

  .pb--25 {
      padding-bottom: 25px !important;
  }

  .pl--25 {
      padding-left: 25px !important;
  }

  .pr--25 {
      padding-right: 25px !important;
  }

  .mt--30 {
      margin-top: 30px !important;
  }

  .mb--30 {
      margin-bottom: 30px !important;
  }

  .ml--30 {
      margin-left: 30px !important;
  }

  .mr--30 {
      margin-right: 30px !important;
  }

  .pt--30 {
      padding-top: 30px !important;
  }

  .pb--30 {
      padding-bottom: 30px !important;
  }

  .pl--30 {
      padding-left: 30px !important;
  }

  .pr--30 {
      padding-right: 30px !important;
  }

  .mt--35 {
      margin-top: 35px !important;
  }

  .mb--35 {
      margin-bottom: 35px !important;
  }

  .ml--35 {
      margin-left: 35px !important;
  }

  .mr--35 {
      margin-right: 35px !important;
  }

  .pt--35 {
      padding-top: 35px !important;
  }

  .pb--35 {
      padding-bottom: 35px !important;
  }

  .pl--35 {
      padding-left: 35px !important;
  }

  .pr--35 {
      padding-right: 35px !important;
  }

  .mt--40 {
      margin-top: 40px !important;
  }

  .mb--40 {
      margin-bottom: 40px !important;
  }

  .ml--40 {
      margin-left: 40px !important;
  }

  .mr--40 {
      margin-right: 40px !important;
  }

  .pt--40 {
      padding-top: 40px !important;
  }

  .pb--40 {
      padding-bottom: 40px !important;
  }

  .pl--40 {
      padding-left: 40px !important;
  }

  .pr--40 {
      padding-right: 40px !important;
  }

  .mt--45 {
      margin-top: 45px !important;
  }

  .mb--45 {
      margin-bottom: 45px !important;
  }

  .ml--45 {
      margin-left: 45px !important;
  }

  .mr--45 {
      margin-right: 45px !important;
  }

  .pt--45 {
      padding-top: 45px !important;
  }

  .pb--45 {
      padding-bottom: 45px !important;
  }

  .pl--45 {
      padding-left: 45px !important;
  }

  .pr--45 {
      padding-right: 45px !important;
  }

  .mt--50 {
      margin-top: 50px !important;
  }

  .mb--50 {
      margin-bottom: 50px !important;
  }

  .ml--50 {
      margin-left: 50px !important;
  }

  .mr--50 {
      margin-right: 50px !important;
  }

  .pt--50 {
      padding-top: 50px !important;
  }

  .pb--50 {
      padding-bottom: 50px !important;
  }

  .pl--50 {
      padding-left: 50px !important;
  }

  .pr--50 {
      padding-right: 50px !important;
  }

  .mt--55 {
      margin-top: 55px !important;
  }

  .mb--55 {
      margin-bottom: 55px !important;
  }

  .ml--55 {
      margin-left: 55px !important;
  }

  .mr--55 {
      margin-right: 55px !important;
  }

  .pt--55 {
      padding-top: 55px !important;
  }

  .pb--55 {
      padding-bottom: 55px !important;
  }

  .pl--55 {
      padding-left: 55px !important;
  }

  .pr--55 {
      padding-right: 55px !important;
  }

  .mt--60 {
      margin-top: 60px !important;
  }

  .mb--60 {
      margin-bottom: 60px !important;
  }

  .ml--60 {
      margin-left: 60px !important;
  }

  .mr--60 {
      margin-right: 60px !important;
  }

  .pt--60 {
      padding-top: 60px !important;
  }

  .pb--60 {
      padding-bottom: 60px !important;
  }

  .pl--60 {
      padding-left: 60px !important;
  }

  .pr--60 {
      padding-right: 60px !important;
  }

  .mt--65 {
      margin-top: 65px !important;
  }

  .mb--65 {
      margin-bottom: 65px !important;
  }

  .ml--65 {
      margin-left: 65px !important;
  }

  .mr--65 {
      margin-right: 65px !important;
  }

  .pt--65 {
      padding-top: 65px !important;
  }

  .pb--65 {
      padding-bottom: 65px !important;
  }

  .pl--65 {
      padding-left: 65px !important;
  }

  .pr--65 {
      padding-right: 65px !important;
  }

  .mt--70 {
      margin-top: 70px !important;
  }

  .mb--70 {
      margin-bottom: 70px !important;
  }

  .ml--70 {
      margin-left: 70px !important;
  }

  .mr--70 {
      margin-right: 70px !important;
  }

  .pt--70 {
      padding-top: 70px !important;
  }

  .pb--70 {
      padding-bottom: 70px !important;
  }

  .pl--70 {
      padding-left: 70px !important;
  }

  .pr--70 {
      padding-right: 70px !important;
  }

  .mt--75 {
      margin-top: 75px !important;
  }

  .mb--75 {
      margin-bottom: 75px !important;
  }

  .ml--75 {
      margin-left: 75px !important;
  }

  .mr--75 {
      margin-right: 75px !important;
  }

  .pt--75 {
      padding-top: 75px !important;
  }

  .pb--75 {
      padding-bottom: 75px !important;
  }

  .pl--75 {
      padding-left: 75px !important;
  }

  .pr--75 {
      padding-right: 75px !important;
  }

  .mt--80 {
      margin-top: 80px !important;
  }

  .mb--80 {
      margin-bottom: 80px !important;
  }

  .ml--80 {
      margin-left: 80px !important;
  }

  .mr--80 {
      margin-right: 80px !important;
  }

  .pt--80 {
      padding-top: 80px !important;
  }

  .pb--80 {
      padding-bottom: 80px !important;
  }

  .pl--80 {
      padding-left: 80px !important;
  }

  .pr--80 {
      padding-right: 80px !important;
  }

  .mt--85 {
      margin-top: 85px !important;
  }

  .mb--85 {
      margin-bottom: 85px !important;
  }

  .ml--85 {
      margin-left: 85px !important;
  }

  .mr--85 {
      margin-right: 85px !important;
  }

  .pt--85 {
      padding-top: 85px !important;
  }

  .pb--85 {
      padding-bottom: 85px !important;
  }

  .pl--85 {
      padding-left: 85px !important;
  }

  .pr--85 {
      padding-right: 85px !important;
  }

  .mt--90 {
      margin-top: 90px !important;
  }

  .mb--90 {
      margin-bottom: 90px !important;
  }

  .ml--90 {
      margin-left: 90px !important;
  }

  .mr--90 {
      margin-right: 90px !important;
  }

  .pt--90 {
      padding-top: 90px !important;
  }

  .pb--90 {
      padding-bottom: 90px !important;
  }

  .pl--90 {
      padding-left: 90px !important;
  }

  .pr--90 {
      padding-right: 90px !important;
  }

  .mt--95 {
      margin-top: 95px !important;
  }

  .mb--95 {
      margin-bottom: 95px !important;
  }

  .ml--95 {
      margin-left: 95px !important;
  }

  .mr--95 {
      margin-right: 95px !important;
  }

  .pt--95 {
      padding-top: 95px !important;
  }

  .pb--95 {
      padding-bottom: 95px !important;
  }

  .pl--95 {
      padding-left: 95px !important;
  }

  .pr--95 {
      padding-right: 95px !important;
  }

  .mt--100 {
      margin-top: 100px !important;
  }

  .mb--100 {
      margin-bottom: 100px !important;
  }

  .ml--100 {
      margin-left: 100px !important;
  }

  .mr--100 {
      margin-right: 100px !important;
  }

  .pt--100 {
      padding-top: 100px !important;
  }

  .pb--100 {
      padding-bottom: 100px !important;
  }

  .pl--100 {
      padding-left: 100px !important;
  }

  .pr--100 {
      padding-right: 100px !important;
  }

  .mt--105 {
      margin-top: 105px !important;
  }

  .mb--105 {
      margin-bottom: 105px !important;
  }

  .ml--105 {
      margin-left: 105px !important;
  }

  .mr--105 {
      margin-right: 105px !important;
  }

  .pt--105 {
      padding-top: 105px !important;
  }

  .pb--105 {
      padding-bottom: 105px !important;
  }

  .pl--105 {
      padding-left: 105px !important;
  }

  .pr--105 {
      padding-right: 105px !important;
  }

  .mt--110 {
      margin-top: 110px !important;
  }

  .mb--110 {
      margin-bottom: 110px !important;
  }

  .ml--110 {
      margin-left: 110px !important;
  }

  .mr--110 {
      margin-right: 110px !important;
  }

  .pt--110 {
      padding-top: 110px !important;
  }

  .pb--110 {
      padding-bottom: 110px !important;
  }

  .pl--110 {
      padding-left: 110px !important;
  }

  .pr--110 {
      padding-right: 110px !important;
  }

  .mt--115 {
      margin-top: 115px !important;
  }

  .mb--115 {
      margin-bottom: 115px !important;
  }

  .ml--115 {
      margin-left: 115px !important;
  }

  .mr--115 {
      margin-right: 115px !important;
  }

  .pt--115 {
      padding-top: 115px !important;
  }

  .pb--115 {
      padding-bottom: 115px !important;
  }

  .pl--115 {
      padding-left: 115px !important;
  }

  .pr--115 {
      padding-right: 115px !important;
  }

  .mt--120 {
      margin-top: 120px !important;
  }

  .mb--120 {
      margin-bottom: 120px !important;
  }

  .ml--120 {
      margin-left: 120px !important;
  }

  .mr--120 {
      margin-right: 120px !important;
  }

  .pt--120 {
      padding-top: 120px !important;
  }

  .pb--120 {
      padding-bottom: 120px !important;
  }

  .pl--120 {
      padding-left: 120px !important;
  }

  .pr--120 {
      padding-right: 120px !important;
  }

  .mt--125 {
      margin-top: 125px !important;
  }

  .mb--125 {
      margin-bottom: 125px !important;
  }

  .ml--125 {
      margin-left: 125px !important;
  }

  .mr--125 {
      margin-right: 125px !important;
  }

  .pt--125 {
      padding-top: 125px !important;
  }

  .pb--125 {
      padding-bottom: 125px !important;
  }

  .pl--125 {
      padding-left: 125px !important;
  }

  .pr--125 {
      padding-right: 125px !important;
  }

  .mt--130 {
      margin-top: 130px !important;
  }

  .mb--130 {
      margin-bottom: 130px !important;
  }

  .ml--130 {
      margin-left: 130px !important;
  }

  .mr--130 {
      margin-right: 130px !important;
  }

  .pt--130 {
      padding-top: 130px !important;
  }

  .pb--130 {
      padding-bottom: 130px !important;
  }

  .pl--130 {
      padding-left: 130px !important;
  }

  .pr--130 {
      padding-right: 130px !important;
  }

  .mt--135 {
      margin-top: 135px !important;
  }

  .mb--135 {
      margin-bottom: 135px !important;
  }

  .ml--135 {
      margin-left: 135px !important;
  }

  .mr--135 {
      margin-right: 135px !important;
  }

  .pt--135 {
      padding-top: 135px !important;
  }

  .pb--135 {
      padding-bottom: 135px !important;
  }

  .pl--135 {
      padding-left: 135px !important;
  }

  .pr--135 {
      padding-right: 135px !important;
  }

  .mt--140 {
      margin-top: 140px !important;
  }

  .mb--140 {
      margin-bottom: 140px !important;
  }

  .ml--140 {
      margin-left: 140px !important;
  }

  .mr--140 {
      margin-right: 140px !important;
  }

  .pt--140 {
      padding-top: 140px !important;
  }

  .pb--140 {
      padding-bottom: 140px !important;
  }

  .pl--140 {
      padding-left: 140px !important;
  }

  .pr--140 {
      padding-right: 140px !important;
  }

  .mt--145 {
      margin-top: 145px !important;
  }

  .mb--145 {
      margin-bottom: 145px !important;
  }

  .ml--145 {
      margin-left: 145px !important;
  }

  .mr--145 {
      margin-right: 145px !important;
  }

  .pt--145 {
      padding-top: 145px !important;
  }

  .pb--145 {
      padding-bottom: 145px !important;
  }

  .pl--145 {
      padding-left: 145px !important;
  }

  .pr--145 {
      padding-right: 145px !important;
  }

  .mt--150 {
      margin-top: 150px !important;
  }

  .mb--150 {
      margin-bottom: 150px !important;
  }

  .ml--150 {
      margin-left: 150px !important;
  }

  .mr--150 {
      margin-right: 150px !important;
  }

  .pt--150 {
      padding-top: 150px !important;
  }

  .pb--150 {
      padding-bottom: 150px !important;
  }

  .pl--150 {
      padding-left: 150px !important;
  }

  .pr--150 {
      padding-right: 150px !important;
  }

  @font-face {
      font-family: Metropolis-bold;
      src: url(../fonts/Metropolis-Bold.otf);
  }

  /* Top Bar */
  .top-bar {
      background-color: #3f3e3e;
      padding: 8px 20px;
      font-size: 14px;
  }

  @media (max-width: 767.98px) {
      .top-bar {
          display: none;
      }
  }

  /* Header Styling */
  .main-header {
      position: sticky;
      top: 0;
      z-index: 1050;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
      background-color: rgb(255 255 255 / 20%);
      backdrop-filter: blur(5px);
      -webkit-backdrop-filter: blur(10px);
  }

  .header-inner {
      padding: 10px 0;
  }

  .logo img {
      max-height: 75px;
  }

  .main-nav .nav-link {
      padding: 15px 20px;
      font-weight: 500;
      color: #fff;
      position: relative;
  }

  .main-nav .nav-link:hover,
  .main-nav .nav-link.active {
      color: #fff;
  }

  .nav-item:hover>.dropdown-menu {
      display: block;
      margin-top: 0;
  }

  .dropdown-menu {
      border-radius: 0;
      border: none;
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
      margin-top: 0;
  }

  .mega-menu {
      width: 100%;
      left: 0;
      padding: 30px;
  }

  @media (max-width: 1200px) {
      .main-nav {
          display: none !important;

      }

      #mobileMenuBtn {
          display: block !important
      }
  }

  /* Mobile Menu */
  .mobile-menu {
      position: fixed;
      top: 0;
      left: -300px;
      width: 270px;
      height: 100%;
      background: #fff;
      transition: left 0.3s ease;
      z-index: 1055;
      padding: 20px;
      box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
  }

  .mobile-menu.open {
      left: 0;
  }

  .menu-overlay {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      z-index: 1050;
  }

  .sticky {
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
      background-color: rgba(000, 000, 000, 50%);
      transition: all 0.3s ease-in-out;
  }

  .menu-overlay.show {
      display: block;
  }

  .nav-icon {
      font-size: 22px;
      background: none;
      border: none;
  }

  .dropdown-toggle::after {
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f078";
      display: inline-block;
      margin-left: 0.3em;
      font-size: 10px;
      vertical-align: 0.15em;
      border-top: none
  }


  .top-rr-menu {
      display: flex;
      flex-wrap: wrap;
      list-style: none;
      padding: 0;
      margin: 0;
      gap: 0px;
      position: relative;
      z-index: 2;
  }

  .top-rr-menu li a {
      display: inline-block;
      padding: 8px 8px;
      color: #fff;
      text-decoration: none;
      transition: all 0.3s ease;
      line-height: 1;
  }

  /* Step 1: When hovering the whole menu, dim all items */
  .top-rr-menu:hover li a {
      opacity: 0.4;
  }

  /* Step 2: Except the hovered one - keep it fully visible and styled */
  .top-rr-menu li a:hover {
      opacity: 1;
      color: #fff;
  }

  .btn-gradient-slide {
      padding: 14px 28px;
      background: linear-gradient(to right, #6a11cb 0%, #2575fc 100%);
      color: white;
      border: none;
      border-radius: 50px;
      font-size: 16px;
      font-weight: bold;
      cursor: pointer;
      background-size: 200% auto;
      transition: all 0.5s ease;
      box-shadow: 0 4px 15px rgba(106, 17, 203, 0.3);
  }

  .btn-gradient-slide:hover {
      background-position: right center;
      transform: translateY(-3px);
      box-shadow: 0 8px 20px rgba(106, 17, 203, 0.4);
  }

  .main-banner {
      margin: -200px 0 0 0;
  }

  .main-banner .carousel-caption {
      width: 100%
  }

  .main-banner .carousel-caption h5 {
      line-height: 60px;
      font-size: 60px;
      color: #fff;
      text-shadow: 1px 1px 15px #6d6c6c;
  }

  .main-banner .carousel-caption p {
      color: #fff
  }

  /* Position caption to the left */
  .carousel-caption.left-caption {
      left: 0% !important;
      right: auto;
      bottom: 10%;
      text-align: center;
      max-width: 100%;
  }

  /* Animation */
  .animate-caption {
      opacity: 0;
      transform: translateX(-30px);
      animation: slideInLeft 1s ease-out 0.5s forwards;
  }

  @keyframes slideInLeft {
      to {
          opacity: 1;
          transform: translateX(0);
      }
  }

  .about-section {
      padding: 60px 0;
  }

  .about-image-stack {
      position: relative;
  }

  .main-doctor-img {
      width: 100%;
      border-radius: 20px;
  }

  .video-support-box {
      position: absolute;
      top: 88px;
      left: -40px;
      background: white;
      border-radius: 24px !important;
      overflow: hidden;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
      padding: 32px;
  }

  .video-support-img {
      width: 160px;
      height: 232px;
      object-fit: cover;
      border-radius: 24px;
  }

  .video-support-label {
      writing-mode: vertical-rl;
      text-orientation: mixed;
      background-color: #002d72;
      color: #fff;
      font-weight: 600;
      font-size: 12px;
      padding: 10px 5px;
      letter-spacing: 1px;
      border-radius: 12px;
  }

  .check-icon {
      color: #00BCD4;
  }

  @media (max-width: 767.98px) {
      .video-support-box {
          position: static;
          margin-bottom: 20px;
      }
  }

  /* COUNTER */
  .counter-section {
      padding: 0px 0;
      background-color: #f9f9f9;
      text-align: center;
  }

  .counter-box {
      margin-bottom: 30px;
      text-align: center;
      border:1px solid #ccc;
      display:block;
      padding: 30px 15px;
      /* height: 135px; */
      border-radius: 14px;
      box-shadow: 1px 1px 12px #ccc;
  }

  .counter {
      font-size: 40px;
      font-weight: 700;
      color: #007bff;
      line-height:38px;
  }

  .counter-label {
      font-size: 16px;
      font-weight: 500;
      color: #444;
  }

  /* Base animation style */
  .animate-on-scroll {
      opacity: 0;
      transform: translateY(40px);
      transition: all 0.8s ease-out;
  }

  /* Active class triggers animation */
  .animate-on-scroll.active {
      opacity: 1;
      transform: translateY(0);
  }

  .single-image {
      position: relative;

  }

  .cc-mscaption {
      position: absolute;
      bottom: 0px;
      left: 0px;
      padding: 30px
  }

  .cc-mscaption h4 {
      color: #fff;
      font-size: 40px;
      margin: 0
  }

  .cc-mscaption label {
      color: #fff
  }

  /* Base block styles (same as before) */
  .cc-block {
      position: relative;
      overflow: hidden;
      background: linear-gradient(transparent, rgb(0 125 255 / 60%) 80%, rgb(0 125 255 / 60%) 90%);
  }

  .cc-block .hover-btn i {
      font-size: 48px;
      color: #fff;
      opacity: .5;
  }

  .cc-block img {
      border-radius: 12px;
      display: block;
      width: 100%;
  }

  .cc-block::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 0%;
      background: linear-gradient(transparent, rgb(0 125 255 / 60%) 80%, rgb(0 125 255 / 60%) 90%);
      transition: all 300ms ease;
      z-index: 1;
      border-radius: 10px;
  }

  .cc-block:hover::before {
      height: 100%;
  }

  /* Button Animation */
  .hover-btn {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, 50%) scale(0.5);
      opacity: 0;
      z-index: 2;
      transition: all 0.4s ease-in-out;
  }

  .cc-block:hover .hover-btn {
      transform: translate(-50%, -50%) scale(1);
      opacity: 1;
  }

  /* Button Design */
  .hover-btn .btn {
      width: 55px;
      height: 55px;
      padding: 0;
      font-size: 22px;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  /* VIDEO SECTION */

  .video-container {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
  }

  .video-container video {
      position: absolute;
      top: 50%;
      left: 50%;
      min-width: 100%;
      min-height: 100%;
      width: auto;
      height: auto;
      transform: translate(-50%, -50%);
      object-fit: cover;
  }

  .caption-overlay {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
      padding: 0 20px;
  }

  .caption-line {
      position: absolute;
      font-size: 2rem;
      color: #fff;
      opacity: 0;
      animation: fadeInOut 9s linear infinite;
  }

  .caption-line:nth-child(1) {
      animation-delay: 0s;
  }

  .caption-line:nth-child(2) {
      animation-delay: 3s;
  }

  .caption-line:nth-child(3) {
      animation-delay: 6s;
  }

  @keyframes fadeInOut {

      0%,
      8% {
          opacity: 0;
          transform: translateY(20px);
      }

      10%,
      30% {
          opacity: 1;
          transform: translateY(0);
      }

      35%,
      100% {
          opacity: 0;
          transform: translateY(-20px);
      }
  }

  @media (max-width: 768px) {
      .caption-line {
          font-size: 1.5rem;
      }
  }

  @media (max-width: 480px) {
      .caption-line {
          font-size: 1.2rem;
      }
  }

  /* NEWS AND EVENTS */
  .news-card {
      border-radius: 12px;
      overflow: hidden;
      transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .news-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
  }

  .news-img {
      width: 100%;
      height: 300px;
      object-fit: cover;
  }

  .meta-info {
      font-size: 0.9rem;
      color: #6c757d;
  }

  .read-more-btn {
      border-radius: 30px;
      font-size: 0.9rem;
      font-weight: 500;
      padding: 6px 16px;
  }

  .card-body {
      background-color: #f7faff;
  }

  h2.fw-bold {
      font-weight: 700 !important;
  }

  /* NOTIFICATION BAR */
 :root { --gap: 40px; } /* space between notices */

  .notification-bar {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    background-color: rgb(0 61 110 / 20%);
    backdrop-filter: blur(5px);
    padding: 8px 0;
    overflow: hidden;
    position: relative;
    z-index: 99;
  }

   .marquee {
    width: 100%;
    overflow: hidden;
  }

  .marquee-track {
    display: flex;
    align-items: center;
    white-space: nowrap;
    will-change: transform;
    animation: marqueeAnim var(--marquee-duration) linear infinite;
  }

  .marquee-content {
    display: inline-flex;
    align-items: center;
  }

  .notice-tag {
  display: inline-block;
  padding: 4px 12px;
  margin-right: var(--gap);
  font-size: 14px;
  border-radius: 50px;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
  color:#fff
}

.notice-tag:hover {
  background: #03A9F4;
  color: #fff;
}

.notice-tag::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255,255,255,0.5), transparent);
  transform: skewX(-20deg);
}

.notice-tag:hover::before {
  animation: shine 0.7s ease forwards;
}

@keyframes shine {
  0% { left: -75%; }
  100% { left: 125%; }
}
  /* Pause animation on hover */
  .notification-bar:hover .marquee-track {
    animation-play-state: paused;
  }

  @keyframes marqueeAnim {
    from { transform: translateX(0); }
    to   { transform: translateX(calc(-1 * var(--marquee-width))); }
  }
.highlight-notice {
  background: rgb(76 175 80 / 40%) !important;
  color: #fff !important;
  animation: smoothBlink 2s ease-in-out infinite;
}

@keyframes smoothBlink {
  0%, 100% {
    background-color: #ff9800;
    box-shadow: 0 0 10px rgba(255, 152, 0, 0.6);
  }
  50% {
    background-color: #ffb84d;
    box-shadow: 0 0 20px rgba(255, 152, 0, 1);
  }
}
  /* FOOTER */
  .foot-links li a {
      color: #5a5959;
      font-size: 14px;
  }

  .foot-links li {
      line-height: 26px;
  }
  
#scrollTopBtn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  background: #007bff;
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  font-size: 22px;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(20px);
  transition: opacity 0.3s ease, visibility 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 16px rgba(0,0,0,0.18);
}

/* When visible */
#scrollTopBtn.show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  animation: bounceIn 0.6s ease; /* trigger bounce */
}

/* Bounce animation */
@keyframes bounceIn {
  0%   { transform: translateY(100px); opacity: 0; }
  60%  { transform: translateY(-15px); opacity: 1; }
  80%  { transform: translateY(8px); }
  100% { transform: translateY(0); }
}
/**/
    .ripple-btn {
 display: inline-flex!important;
  align-items: center;      /* centers icon + text */
  justify-content: center;
  background: #f03854;
  border-radius: 60px;
  padding: 5px 15px;
  font-weight: 600;
  color: #fff;
  font-size: 14px;
  border: none;
  line-height: 1;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.ripple-btn i{
    font-weight:normal;
    padding-right:5px;
}
    /* Ripple Effect Layer */
    .ripple-btn::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 0;
      height: 0;
      background: rgba(255, 255, 255, 0.4);
      border-radius: 50%;
      transform: translate(-50%, -50%) scale(0);
      transition: width 0.6s ease, height 0.6s ease, opacity 0.6s ease, transform 0.6s ease;
      opacity: 0;
    }

    .ripple-btn:hover::after {
      width: 300px;
      height: 300px;
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
    }

    .ripple-btn:active {
      transform: scale(0.97); /* subtle press effect */
    }
/* ================= FOOTER ================= */
.footer {
  background: #111; /* Dark elegant */
  color: #bbb;
  padding: 60px 0 20px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.footer .logo img {
  max-width: 160px;
  margin-bottom: 20px;
  filter: grayscale(100%) contrast(1.2);
}

/* Text */
.footer .foot-txt p {
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 10px;
  color: #aaa;
}
.footer .foot-txt p i {
  margin-right: 8px;
  color: #666;
}

/* Social Icons */
.footer .ssll8999 a {
  display: inline-block;
  font-size: 18px;
  color: #999;
  margin-right: 12px;
  transition: all 0.3s ease;
}
.footer .ssll8999 a:hover {
  color: #fff;
  transform: scale(1.1);
}

/* Section Headings */
.footer h5 {
  font-size: 15px;
  margin-bottom: 15px;
  color: #eee;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.footer h5::after {
  content: '';
  width: 30px;
  height: 1px;
  background: #444;
  display: block;
  margin-top: 8px;
}

/* Footer Links */
.footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer ul li {
  margin-bottom: 8px;
}
.footer ul li a {
  color: #aaa;
  font-size: 14px;
  text-decoration: none;
  display: inline-block;
  transition: color 0.25s ease;
}
.footer ul li a i {
  margin-right: 8px;
  color: #666;
}
.footer ul li a:hover {
  color: #fff;
}

/* Bottom Credit */
.foot-credit {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 40px;
  padding-top: 15px;
  font-size: 13px;
  color: #777;
}
.foot-credit a {
  color: #aaa;
  text-decoration: none;
  transition: 0.3s;
}
.foot-credit a:hover {
  color: #fff;
}

/* Responsive */
@media (max-width: 991px) {
  .footer {
    padding: 40px 0 15px;
  }
  .footer h5 {
    margin-top: 20px;
  }
}
@media (max-width: 575px) {
  .footer .logo img {
    max-width: 130px;
  }
  .foot-credit {
    text-align: center;
    font-size: 12px;
  }
}
.inner-banner{
	margin-top:-140px;
}
.inner-body{
	padding:50px 0
}
/* Banner Wrapper */
.inner-banner {
  position: relative;
  width: 100%;
  height: 420px; /* Adjust as needed */
  overflow: hidden;
}

.inner-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Overlay */
.inner-banner .over-lay2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(15, 15, 15, 0.55); /* dark overlay for contrast */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Breadcrumb */
.breadcrumb {
  background: transparent;
  padding: 0;
  margin-bottom: 10px;
  justify-content: center;
}

.breadcrumb-item {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  text-transform: capitalize;
}

.breadcrumb-item + .breadcrumb-item::before {
  color: #ddd;
}

.breadcrumb-item.active {
  color: #f5f5f5;
}

/* Heading */
.mbbs-header h1 {
  font-size: 42px;
  font-weight: 700;
  color: #fff;
  margin-top: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Responsive */
@media (max-width: 768px) {
  .inner-banner {
    height: 220px;
  }
  .mbbs-header h1 {
    font-size: 28px;
  }
  .breadcrumb-item {
    font-size: 12px;
  }
}
