/* Single row with horizontal scroll (no wrap) */
.rbt-header-top .rbt-secondary-menu {
  display: flex;
  gap: 0 14px;
  white-space: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
}
.rbt-header-top .rbt-secondary-menu::-webkit-scrollbar { display: none; }

.btn-outline-primary:hover

 {
    color: #fff;
    background-color: #cce1ff;
    border-color: #0d6efd;
}


/* Normalize typography in the "Classes" column */
table .ds-class,
table .ds-class * {
  font-size: 14px !important;
  color: #0061d9 !important;
  line-height: 1.5;
}

/* Prevent oversized headings coming from rich HTML */
table .ds-class h1,
table .ds-class h2,
table .ds-class h3,
table .ds-class h4,
table .ds-class h5,
table .ds-class h6 {
  font-size: 14px !important;
  margin: 0;
}

/* Link presentation */
table .ds-class a {
  text-decoration: none;
}
table .ds-class a:hover {
  text-decoration: underline;
}

/* Small touch-ups */
#dsTableTheory td,#dsTableTheory th,
#dsTablePractical td,#dsTablePractical th{ vertical-align:middle; }
.nav-pills .nav-link.active{ background:#d2e4ff; color:#0061d9 !important; }


.kcp-filters, .kcp-syllabus{ position:relative; overflow:visible; z-index:1; }
#kcpTable td,#kcpTable th{ vertical-align:middle; }

/* Manual dropdown */
.kcp-dd { position:relative; width:100%; }
.kcp-dd-toggle{
  width:100%; min-height:48px; border-radius:10px;
  border:1px solid #ced4da; background:#fff;
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px; font-size:1rem; cursor:pointer;
}
.kcp-dd-toggle:focus{ outline:2px solid #0061d9; outline-offset:1px; }
.kcp-dd-text{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis;font-size: 16px; }
.kcp-dd-caret{ margin-left:10px; font-size:14px; opacity:.7; }
.kcp-dd-options{ display:none; } /* source only */

/* Floating menu appended to <body> */
.kcp-dd-portal{
  position:fixed; z-index:30000;
  background:#fff; border:1px solid #dee2e6; border-radius:10px;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  max-height:50vh; overflow:auto; width:260px;
}
.kcp-dd-portal ul{ list-style:none; margin:0; padding:6px; }
.kcp-dd-portal li{
  padding:10px 12px; border-radius:8px; cursor:pointer;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.kcp-dd-portal li:hover,
.kcp-dd-portal li.active{ background:#0061d9; color:#fff; }

/* Modal layering (in case header has z-index) */
.modal{ z-index: 20000 !important; }
.modal-backdrop{ z-index: 19990 !important; }

.bg-gradient-11

 {
    background: linear-gradient(180deg, #deedfd 0%, #5c95fd 100%) !important;
}

/* Let the mega menu grow and scroll instead of clipping */
.with-megamenu.position-static > .rbt-megamenu{
  max-height: 80vh !important;   /* visible up to 80% of viewport */
  overflow-y: auto !important;   /* scroll the dropdown itself */
  overflow-x: visible !important;
  height: auto !important;
  z-index: 10000 !important;     /* stay above header/other elements */
}

/* Uncap any inner wrappers that might be limiting height */
.rbt-megamenu .wrapper,
.rbt-megamenu .row,
.rbt-megamenu [class*="col-"],
.rbt-megamenu .single-mega-item,
.rbt-megamenu .single-mega-item .mega-menu-item{
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
}

/* Optional: give each long list its own scroll if preferred */
.rbt-megamenu .single-mega-item .mega-menu-item{
  max-height: 60vh;              /* per-column limit */
  overflow-y: auto;
  padding-right: 8px;            /* room for scrollbar */
}

/* Optional: nicer scrollbar */
.rbt-megamenu .single-mega-item .mega-menu-item::-webkit-scrollbar{ width:8px }
.rbt-megamenu .single-mega-item .mega-menu-item::-webkit-scrollbar-thumb{
  background: rgba(0,0,0,.25); border-radius: 8px;
}





.rbt-header .mainmenu-nav .mainmenu li.with-megamenu .rbt-megamenu.grid-item-3 {
    width: 1100px;
    margin: 0 auto;
}
/* Slideshow container */
.slideshow-container {
  width: 100%;             /* Auto fit device width */
  max-width: 100%;         /* Prevents overflow */
  height: 70vh;            /* Dynamic height based on screen */
  position: relative;
  margin: auto;
  overflow: hidden;
}

/* Slides */
.mySlides {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.mySlides img {
  width: 100%;
  height: 100%;
  object-fit: cover;        /* Maintains aspect ratio */
}

/* Active slide */
.mySlides.active {
  opacity: 1;
}

/* Caption text */
.text {
  color: #fff;
  font-size: 18px;
  padding: 12px;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.5);
  border-radius: 5px;
  text-align: center;
}

/* Responsive font size */
@media only screen and (max-width: 768px) {
  .slideshow-container {
    height: 40vh;   /* smaller height on tablets */
  }
  .text {
    font-size: 14px;
    padding: 8px;
  }
}

@media only screen and (max-width: 480px) {
  .slideshow-container {
    height: 30vh;   /* smaller height on mobiles */
  }
  .text {
    font-size: 12px;
    padding: 6px;
  }
}

.rbt-card-img img {
    max-width: 200px;  /* fix width */
    height: auto;      /* keep aspect ratio */
}

.border-top-bar-primary-color {
    border-top: 5px solid #ff8f00;
}

.bg-color-dark {
    background-color: #0061d9 !important;
}

.rbt-header .mainmenu-nav .mainmenu > li > a

 {
    color: #0061d9;
    font-size: 16px;
    font-weight: 500;
    padding: 0 8px;
    display: flex;
    align-items: center;
    height: 80px;
    line-height: 80px;
    transition: 0.3s;
}

/* Keep top-level label on one line */
.has-dropdown > a { 
  white-space: nowrap !important;
}

/* Make the dropdown auto-fit its content width */
.has-dropdown .submenu {
  width: max-content;          /* grow to longest item */
  min-width: 220px;            /* sensible minimum */
  white-space: nowrap;         /* prevent wrapping inside */
  overflow: visible;           /* allow it to expand naturally */
}

/* Each item stays single-line */
.has-dropdown .submenu li > a {
  display: block;
  white-space: nowrap !important;
}

/* If your nav uses flex and squeezes items, don't let it shrink */
.navbar-nav > li.has-dropdown {
  flex: 0 0 auto;
}
@media (max-width: 991.98px){
  .has-dropdown .submenu { width: 100%; white-space: normal; }
  .has-dropdown .submenu li > a { white-space: normal !important; }
}

.rbt-header .mainmenu-nav .mainmenu li.has-dropdown .submenu li a

 {
    font-weight: 500;
    padding: 5px 10px;
    font-size: 14px;
    display: block;
    color: #151616;
    margin: 0 10px;
    border-radius: 3px;
}
.rbt-header .logo a img {
    max-height: 90px;
    object-fit: cover;
    max-width: 300px;
}

.rbt-short-title {
    font-size: 12px;
    padding-bottom: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 1;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--color-border);
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    word-break: break-word;
    font-family: var(--font-secondary);
    line-height: 1.4074;
    color: #155bd9;
}
.rbt-header .mainmenu-nav .mainmenu li.with-megamenu .rbt-megamenu .wrapper .mega-menu-item li a

 {
    font-weight: 500;
    padding: 2px 5px;
    font-size: 15px;
    display: block;
    color: #0e0e0e;
    margin: 0 10px;
    border-radius: 4px;
    transition: 0.3s;
    display: flex
;
    align-items: center;
}

.rbt-btn.btn-gradient

 {
    color: var(--color-white);
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #e57f00, #e76666, #ef6e0f, #e57f00);
}

/* Card look */
  .feedback-card{background:#fff;border-radius:12px}

  /* Bottom border items */
  .feedback-list .feedback-item{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08)}
  .feedback-list .feedback-item:last-child{border-bottom:0}

  /* Single-line links */
  .feedback-list .link-single-line{
    display:block;width:100%;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    text-decoration:none;color:#212529
  }
  .feedback-list .link-single-line:hover{text-decoration:underline}

  /* Icon styling */
  .feedback-list i{font-size:18px;color:#198754}
  /* Let the text wrap on mobile screens */
@media (max-width: 575.98px) {  /* Bootstrap 'sm' breakpoint */
  .feedback-list .link-single-line {
    white-space: normal !important;   /* allow wrapping */
    overflow: visible;                 /* no clipping */
    text-overflow: unset;              /* remove ellipsis */
  }
  .feedback-list .feedback-item {
    align-items: flex-start;           /* icon stays top-left, text wraps next to it */
  }
  .feedback-list .link-single-line {
    flex: 1 1 auto;                    /* use available width when wrapping */
    display: block;
  }
}

/* Brand underline */
.brand-underline{
  width:110px;height:4px;background:#0061d9;border-radius:2px
}

/* Card base */
.news-card{
  background:#fff;border-radius:12px;overflow:hidden;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  transition:transform .35s ease, box-shadow .35s ease;
  color:#1f2d3d
}
.news-card:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 28px rgba(0,0,0,.12)
}

/* Image wrap + zoom on hover */
.news-img-wrap{position:relative;overflow:hidden;border-radius:12px}
.news-img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .6s ease}
.news-card.small .news-img{height:160px}
.news-card:hover .news-img{transform:scale(1.06)}

/* Date badge */
.date-badge{
  position:absolute;left:12px;top:12px;
  background:#0061d9;color:#fff;font-weight:600;
  font-size:.78rem;padding:6px 10px;border-radius:999px
}

/* Titles */
.news-title{line-height:1.35;margin:0}
.news-card .news-title a{color:inherit;text-decoration:none}
.news-card .news-title a:hover{color:#0061d9}

/* Brand “View More” button look */
.btn-brand{
  display:inline-block;background:#0061d9;color:#fff;
  border-radius:999px;padding:8px 14px;font-weight:600;font-size:.9rem
}
.btn-brand:hover{filter:brightness(.95)}

/* Reveal on scroll (no external lib needed) */
.reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .5s ease, transform .5s ease}
.reveal-on-scroll.is-visible{opacity:1;transform:none}

/* Responsive tweaks */
@media (max-width: 991.98px){
  .news-img{height:220px}
}
@media (max-width: 575.98px){
  .news-img{height:200px}
  .date-badge{font-size:.72rem;padding:5px 9px}
}

.news-img{
  border: 2px solid #0061d9;
  border-radius: 12px;
}
/* Increase height of the first/big news image */
.news-card.big .news-img { 
  height: 320px;  /* was 260px — adjust to taste (e.g., 300) */
}

/* Keep it sensible on smaller screens */
@media (max-width: 1199.98px){ .news-card.big .news-img { height: 300px; } }
@media (max-width: 991.98px){  .news-card.big .news-img { height: 240px; } }


.brand-underline{width:110px;height:4px;background:#0061d9;border-radius:2px}

/* Card look */
.recruiter-card{
  background:#fff;border-radius:12px;
  border:1px solid rgba(0,97,217,.18);
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  height:120px; /* uniform tiles */
  display:flex;align-items:center;justify-content:center;
  padding:18px;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.recruiter-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  border-color:#0061d9;
}

/* Logos: centered, maintain aspect, grayscale -> color + slight zoom */
.recruiter-logo{
  max-width:100%;max-height:70px;object-fit:contain;display:block;
 
}
.recruiter-card:hover .recruiter-logo{ filter:none; transform:scale(1.04); }

/* Responsive tile height tweaks */
@media (max-width: 991.98px){ .recruiter-card{ height:110px; } .recruiter-logo{ max-height:64px; } }
@media (max-width: 575.98px){ .recruiter-card{ height:100px; } .recruiter-logo{ max-height:56px; } }

.rbt-page-banner-wrapper {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    position: relative;
    margin: 0 auto;
    padding: 60px 0px 100px;
    width: 100%;
    overflow: hidden;
}

.rbt-banner-image, .bg-gradient-9
{
    position: relative;
    z-index: 1;
   
}

.rbt-section-overlayping-top

 {
    margin: 10px auto 0;
    position: relative;
    z-index: 2;
}


.rbt-gradient-border

 {
    background: linear-gradient(-145deg, #37abff, #637FEA) !important;
    z-index: 10;
}

.rbt-single-widget ul.rbt-sidebar-list-wrapper.recent-post-list li + li

 {
    margin-top: 10px;
    /* padding-top: 10px; */
    border-top: 1px solid var(--color-border-2);
}

/* force the wrapper to center its content */
.title-wrapper{
  display:grid !important;        /* beats theme flex/inline rules */
  place-items:center !important;  /* centers both axes */
  width:100%;
  margin:20px 0;
}
/* make sure the text itself is centered even if theme sets text-left */
.title-wrapper .title{
  margin:0;
  text-align:center !important;
}
.title-wrapper,
.title-wrapper .title{ text-align:center !important; }

/* === KCP About Sidebar tweaks === */
.kcp-about-list li{
  margin: 0;
  padding: 0 0 8px 0;                  /* space for the divider */
  border-bottom: 1px solid rgba(0,97,217,.15); /* line after each link */
}
.kcp-about-list li:last-child{
  border-bottom: 0;                    /* no line after the last item */
  padding-bottom: 0;
}

/* Link look: no border, tighter padding */
.kcp-about-list .sidebar-link{
  display: flex; align-items: center; gap: 8px;
                     /* reduced padding */
  background: transparent;             /* remove white card look if any */
  border: none;                        /* remove border around links */
  color: #0061d9;                      /* blue for inactive */
  text-decoration: none;
}
.kcp-about-list .sidebar-link:hover{
  background: #f5f9ff;                 /* subtle hover */
}

/* Active item: orange text, no border */
.kcp-about-list li.active .sidebar-link{
  color: #ff8519;                      /* orange active */
  background: #fffff;                 /* light tint (optional) */
  font-weight: 600;
}

/* Smaller check-in-circle icon */
.kcp-about-list .icon-circle{
  width: 16px; height: 16px;           /* reduced size */
  border-radius: 50%;
  border: 2px solid currentColor;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 10px; line-height: 1;     /* tick size */
  flex-shrink: 0;
}

  .kcp-fab{
    position:fixed; right:18px; bottom:100px; z-index:1040;
    width:56px; height:56px; border:none; border-radius:50%;
    background:#0061d9; color:#fff; display:inline-grid; place-items:center;
    box-shadow:0 12px 30px rgba(0,97,217,.3), 0 2px 6px rgba(0,0,0,.12);
    cursor:pointer; transition:transform .15s ease, box-shadow .2s ease, filter .2s ease;
  }
  .kcp-fab:hover{ transform:translateY(-2px); filter:brightness(1.05); }
  .kcp-fab:active{ transform:translateY(0); }
  @media (max-width:575.98px){
    .kcp-fab{ right:14px; bottom:100px; width:54px; height:54px; }
  }
   /* More space from the bottom on mobile */
  @media (max-width: 575.98px) {
    .kcp-fab {
      bottom: 100px !important; /* tweak: 32–48px to taste */
    }
  }
 /* Ensure the quick FAB clears the enquiry FAB */
  #qaFab { bottom: 180px !important; } /* 100 (enquiry) + 56 (fab) + ~24 gap */

  /* Let JS set the panel position; start hidden visually off */
  #qaPanel {
    right: 18px !important;
    bottom: auto !important; /* JS will set it */
  }
  
   /* When any Bootstrap modal is open, hide floating UI */
  .modal-open #qaFab,
  .modal-open #qaPanel,
  .modal-open #kcpEnquiryFab {
    display: none !important;
    pointer-events: none !important;
  }
  
  
  
  