/* Custom CSS for AVIT Homepage */

:root {
    --font-button: "Hind", sans-serif;
    --primary-blue-color: #002147;
    --secondary-blue-color: #336D9A;
    --accent-color: #FFB606;
    --primary-text-color:#25408D;
    --light-blue:#EBF5FF;
    --text-dark: #1A1A1A;
    --text-light: #5D5D5D;
    --bg-light: #f8fafc;
    --white: #ffffff;
    --body-font-size: 16px;
    --section-sub-heading: 14px;
    --section-heading:2.25rem;
    --radius-small: 16px;
}

.theme-dark-bg{
    background:var(--primary-text-color)!important;
}
.theme-light-bg{
    background:var(--light-blue)!important;
}
.text-left{text-align: left!important;}
.text-center{text-align: center!important;}
.text-right{text-align: right!important;}

.accent-yellow{
    color: var(--accent-color)!important;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


html::-webkit-scrollbar-track , 
.popup-content-inner::-webkit-scrollbar-track,
.menu-height-desk::-webkit-scrollbar-track{
    -webkit-box-shadow: inset var(--primary-blue-color);
    background-color: transparent
}
html::-webkit-scrollbar , 
.popup-content-inner::-webkit-scrollbar,
.menu-height-desk::-webkit-scrollbar{
    width: 4px;
    height: 10px;
    background-color: transparent
}
html::-webkit-scrollbar-thumb ,
.popup-content-inner::-webkit-scrollbar-thumb,
.menu-height-desk::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset var(--primary-blue-color);
    background: var(--primary-blue-color);
}

html{
    font-size: var(--body-font-size);
}

body {
    font-family: "Montserrat", sans-serif;
    line-height: 1.6;
    color: var(--text-dark);
    font-size: var(--body-font-size);
    overflow-x: hidden;
}

a, a:hover{text-decoration: none;}

.pt-50,
.footer.pt-50{padding-top:50px}
.mb-60{margin-bottom: 60px!important;}

.book-now button {
    background: var(--accent-color);
    border-radius: 10px 10px 0 0;
    display: block;
    font-size: 16px;
    position: fixed;
    right: -53px;
    display: flex;
    border: 0;
    font-weight: 600;
    justify-content: center;
    z-index: 999;
    align-items: center;
    color: #fff;
    line-height: normal;
    top: 50%;
    padding: 12px 15px;
    /* box-shadow: rgba(149, 157, 165, .2) 0 8px 24px; */
    text-align: center;
    text-decoration: none;
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    width: 150px;
    -o-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg)
}


.book-now{
  position: fixed;
    top: 50%;
    right: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 180px;
    transform: translateY(-50%);
    z-index: 99;
}

.book-now .sticky-btn {
    background: var(--primary-blue-color);
    border-radius: 10px 0 0 10px;  
    font-size: 0.7rem !important;
    border: 0;
    font-weight: 700 !important;
    font-family: "Montserrat", sans-serif !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #fff;
    line-height: normal;   
    padding: 12px 12px;
    text-align: left;
    text-decoration: none;   
    box-sizing: border-box;   
 width: 150px;
    margin-left: auto;
    transition: width 0.35s ease;
}


.book-now .sticky-btn:hover {
  width: 180px;
}

.book-now .sticky-btn .btn-icon img{
    width: 20px;
    height: auto;
}

/**Header**/
header {
  /* position: relative; */
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  transition: transform 0.5s ease-in-out;
  border-bottom: 1px solid #ddd;
}

header.fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

header.hide-header {
  transform: translateY(-130%);
}

header.show-header {
  transform: translateY(0);
}

.top-news {
    background: var(--primary-blue-color);
    width: 100%;
    min-height: 35px;
    display: flex;
    align-items: center
}

.top-news .html-marquee {
    overflow: hidden;
    position: relative
}

.top-news .html-marquee .span-text {
    color: var(--white);
    font-weight: 500;
    font-size: 14px;
    padding: 10px
}

.top-news .html-marquee .span-text p{
    margin-bottom: 0;
}

#announceBar .span-text {
    padding-right: 15px;  
    color: var(--white);
    font-weight: 500;
    font-size: 14px;
    padding: 10px
}

#announceBar .span-text p{
    margin-bottom: 0!important;
}


#announceBar .span-text u {
    color: var(--accent-color);
}

/* Topbar */
.marquee-new {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}

.marquee-new .marquee-content {
  display: inline-block;
  padding-left: 100%;
  animation: nmarquee 20s linear infinite;
}

.marquee-new .marquee-content a {
  display: flex;
  margin-right: 40px;
  color: #fff;
  text-decoration: none;
}

@keyframes nmarquee {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}

.topbar {
    background: var(--primary-text-color);
    color: var(--light-blue);
    font-size: 1rem;  
    font-weight: 500;
    height: 60px;
}
.topbar a, .topbar a:hover {
    text-decoration: none;
    color: var(--light-blue);
}

.topbar-icon img,
.topbar-social img {
 width:20px;
 height:auto
}
.topbar-text {
    color: var(--light-blue);
    font-weight: 500;
}
.topbar-logo {
    height: 22px;
    width:auto;  
}

.topbar-social {  
    margin-left: 10px;
    transition: color 0.2s;
}


/* Navigation Styles */
.navbar {  
    transition: all 0.3s ease;
    padding:0;
    height: 85px;
}

.navbar-brand.logo-div {
    /* position: absolute;
    left: 48px;
    background: #fff;
    padding: 16px;
    z-index: 99;
    border-radius: 12px; */
    position: relative;
    z-index: 99;
    margin-left:30px;
}

.navbar-brand.logo-div img{
    width: 200px;
    height: auto;
}

.navbar .foundation-logo{
    width:240px;
    height: auto;
}

.navbar .search-btn,
.navbar .menu-btn{
    background: var(--primary-blue-color);
    color:var(--white);
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    min-height: 85px;
    height: 100%;
    padding: 10px 26px;
    border:0;
    box-shadow: none;
   transition: all 0.3s ease;
}

.navbar .search-btn:hover,
.navbar .menu-btn:hover{
   background: var(--accent-color)!important;   
}

.navbar .menu-btn{
    background: var(--accent-color)!important;
    color:var(--text-dark);
}

/* Hamburger / Menu — brand yellow */
.navbar .menu-btn.hamburger-btn,
.navbar #hamburgerBtn.menu-btn {
    background: #F0A500 !important;
    color: var(--text-dark);
}
.navbar .menu-btn.hamburger-btn:hover,
.navbar #hamburgerBtn.menu-btn:hover {
    background: #d89400 !important;
}

.navbar .search-btn:hover{
    color:var(--text-dark);
}

.navbar .menu-btn img,
.navbar .search-btn:hover img{
    filter: brightness(0) invert(0);
}

.navbar .search-btn img,
.navbar .menu-btn img{
    width: 18px;
    height: auto;
}

#wrap{
    position: relative;
}

.content-wrap{
    margin-top: 175px;
}

/* Buttons — sitewide typography (matches hero split CTAs) */
.btn,
.btn-sm,
.btn-lg {
    --bs-btn-font-size: 12px !important;
    /* --bs-btn-font-size: 0.7rem !important; */
    --bs-btn-font-weight: 700 !important;
    --bs-btn-font-family: "Montserrat", sans-serif !important;
    font-family: "Montserrat", sans-serif !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

a.sticky-btn2,
button.sticky-btn2,
.book-now button,
button.read-toggle-btn,
button.npfWidgetButton {
    font-family: "Montserrat", sans-serif !important;
    font-size: 12px !important;
    /* font-size: 0.7rem !important; */
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

/**Primary btn**/
.btn-primary {
    background-color: var(--primary-blue-color);
    border:2px solid var(--primary-blue-color);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:#fff;
     position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;   
}

.btn-primary .btn-arrow {
    display: inline-flex;
    transition: transform 0.3s ease;
    display: none;
}
.btn-primary:hover .btn-arrow {
    transform: translateX(6px);
}

.btn-primary:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    /* border-radius: 10px; */
    background-color: rgba(255, 255, 255, 0.08);
    transition: all 0.3s ease;
}

.btn-primary:hover,
.btn-primary:active
.btn-primary:focus-visible,
.btn-primary:focus,
.btn-primary:first-child:active,
:not(.btn-check)+.btn-primary:active {
    background-color: var(--primary-blue-color);
    box-shadow: none;
    border:2px solid rgba(255, 255, 255, 0.08);
}

.btn-primary:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}

/**Secondary btn**/
.btn-secondary {
    background-color: var(--secondary-blue-color);
    border:2px solid var(--secondary-blue-color);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:#fff;
     position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;      
}

.btn-secondary .btn-arrow {
    display: inline-flex;
    transition: transform 0.3s ease;
    display: none;
}
.btn-secondary:hover .btn-arrow {
    transform: translateX(6px);
}

.btn-secondary:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.08);
    transition: all 0.3s ease;
}

.btn-secondary:hover,
.btn-secondary:active
.btn-secondary:focus-visible,
.btn-secondary:focus,
.btn-secondary:first-child:active,
:not(.btn-check)+.btn-secondary:active {
    background-color: var(--secondary-blue-color);
    box-shadow: none;
    border:2px solid rgba(255, 255, 255, 0.08);
}

.btn-secondary:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}

/**Secondary yellow btn**/
.btn-secondary-yellow {
    background-color: var(--accent-color);
    border:2px solid var(--accent-color);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:#000;
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;
}

.btn-secondary-yellow .btn-arrow {
    display: inline-flex;
    transition: transform 0.3s ease;
    display: none;
}
.btn-secondary-yellow:hover .btn-arrow {
    transform: translateX(6px);
}

.btn-secondary-yellow:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    /* border-radius: 10px; */
    background-color: rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.btn-secondary-yellow:hover,
.btn-secondary-yellow:active
.btn-secondary-yellow:focus-visible,
.btn-secondary-yellow:focus,
.btn-secondary-yellow:first-child:active,
:not(.btn-check)+.btn-secondary-yellow:active {
    background-color: var(--accent-color)!important;
    color:#000;
    box-shadow: none;
    border:2px solid rgba(0, 0, 0, 0.05)!important;
}

.btn-secondary-yellow:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}

/**Secondary light-blue btn**/
.btn-secondary-lblue {
    background-color: var(--light-blue);
    border:2px solid var(--light-blue);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:var(--primary-text-color);
     position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;
}

.btn-secondary-lblue .btn-arrow {
    display: inline-flex;
    transition: transform 0.3s ease;
    display: none;
}
.btn-secondary-lblue:hover .btn-arrow {
    transform: translateX(6px);
}

.btn-secondary-lblue:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 10px;
    background-color: rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.btn-secondary-lblue:hover,
.btn-secondary-lblue:active
.btn-secondary-lblue:focus-visible,
.btn-secondary-lblue:focus,
.btn-secondary-lblue:first-child:active,
:not(.btn-check)+.btn-secondary-lblue:active {
    background-color: var(--light-blue);
    color:var(--primary-text-color);
    box-shadow: none;
    border:2px solid rgba(0, 0, 0, 0.05);
}

.btn-secondary-lblue:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}

/**Primary outline btn**/
.btn-primary-outline {
    background-color: transparent;
    border:2px solid var(--primary-blue-color);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:var(--primary-blue-color);
     position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;
}

.btn-primary-outline:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 10px;
    /* background-color: rgba(0, 0, 0, 0.08); */
    background-color: rgba(0, 33, 71, 0.08);
    transition: all 0.3s ease;
}

.btn-primary-outline:hover,
.btn-primary-outline:active
.btn-primary-outline:focus-visible,
.btn-primary-outline:focus,
.btn-primary-outline:first-child:active,
:not(.btn-check)+.btn-primary-outline:active {
    background-color: transparent;
    color:var(--primary-blue-color);
    box-shadow: none;  
    border:2px solid var(--primary-blue-color); 
}

.btn-primary-outline:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}

/**Secondary outline btn**/
.btn-secondary-outline {
    background-color: transparent;
    border:2px solid var(--light-blue);
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 12px 26px;
    color:var(--light-blue);
     position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 1;
}

.btn-secondary-outline:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 0;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.08);
    transition: all 0.3s ease;
}

.btn-secondary-outline:hover,
.btn-secondary-outline:active
.btn-secondary-outline:focus-visible,
.btn-secondary-outline:focus,
.btn-secondary-outline:first-child:active,
:not(.btn-check)+.btn-secondary-outline:active {
    background-color: transparent;
    color:var(--light-blue);
    box-shadow: none;  
    border:2px solid var(--light-blue); 
}

.btn-secondary-outline:hover::after{
    top: auto;
    bottom: 0;
    height: 100%;
}


/*Section Headings */
.section-heading {
    text-align: center;
    margin-bottom: 2rem;
}
.section-heading p.badge{
    background-color: var(--light-blue);
    color: var(--primary-text-color);
    border-radius: 50px;
    font-weight: 600;
    font-size: var(--section-sub-heading);
    display:inline-flex;
    align-items: center;
    padding: 12px 24px;
    height: 36px;
}
.section-heading p.badge .p_icon{
    display: none;
}
.section-heading p.badge{
    margin: 10px 0 10px;
    padding: 0;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: var(--accent-color);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.20em;
    line-height: 1.2;
    display: inline-block;
}
.campus-video-section .section-heading p.badge{
    margin: 10px 0 10px;
    padding: 0;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: var(--accent-color);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.20em;
    line-height: 1.2;
    display: inline-block;
}

.section-heading p .p_icon img{
    width: 24px;
    height: auto;
    margin-right: 10px;
    /* margin-top: -2px; */
}

.section-heading h2{
    font-size: var(--section-heading);
    font-weight: 700;
    color: var(--primary-blue-color);
}

.section-heading p.description,
.section-heading .description p{
    font-size: var(--section-sub-heading);
    font-weight: 500;
    color: var(--text-light);   
    background-color:transparent;
    border:0;
    padding:0;
    height: auto; 
}

.section-heading .description.text-dark p{
    color:var(--text-dark)!important;
}

.section-heading .description.text-white p{
     color:rgba(255, 255, 255, 0.8)!important;
}

/* Hero section*/
.hero-section{
    background: var(--light-blue);
    padding:60px 0;
}

.hero-title {
    font-size: 58px;
    font-weight: 800;
    color: var(--primary-blue-color);
    margin-bottom: 0;
    line-height: 1.2;
}

.hero-subtitle {
    font-size: 1rem;
    font-weight: 400;
    color: var(--text-dark);
    margin-bottom: 2rem;
    line-height: 1.6;
}

.hero-buttons {
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
}

.hero-buttons .hero-btn-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.heroSwiper {
  width: 100%;
  padding: 40px 0 50px;
}


.heroSwiper .swiper-slide { 
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s ease;
  border-radius: 20px;
}

.heroSwiper .swiper-slide figure{   
    position: relative;
}

.heroSwiper .swiper-slide figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
  display: block;
 transition: opacity 0.5s ease;
}

.heroSwiper .swiper-slide figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5); 
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.5s ease;
  border-radius: 20px;
  z-index: 1;
}

.heroSwiper .swiper-slide.swiper-slide-visible.swiper-slide-fully-visible.swiper-slide-active figure::after{
 opacity: 0;
}

/* Remove all controls except play */
.banner-video::-webkit-media-controls-timeline,
.banner-video::-webkit-media-controls-volume-slider,
.banner-video::-webkit-media-controls-mute-button,
.banner-video::-webkit-media-controls-fullscreen-button,
.banner-video::-webkit-media-controls-current-time-display,
.banner-video::-webkit-media-controls-time-remaining-display {
  display: none !important;
}

/* Keep play button visible */
.banner-video::-webkit-media-controls-play-button {
  display: block !important;
}

/* Optional: cleaner look */
.banner-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.video-wrapper {
  position: relative;
  width: 100%;
  height: calc(100vh - 130px);
}

.video-wrapper .banner-image{
  width: 100%;
  height: 100%; 
  margin-bottom: 0;
}

.video-wrapper .banner-image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: bottom;
}

.banner-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Toggle button */
.video-toggle-btn {
  position: absolute;
  left: 30px;
  bottom: 30px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: none;
  background: #ffffff;
  opacity: 0.5;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s ease;
  z-index: 9;
}

.video-toggle-btn:hover {
  transform: scale(1.05);
  opacity: 1;
}

.video-toggle-btn img {
  width: 20px;
  height: 20px;
}

/* State-based visibility */
.video-wrapper.playing .icon-play {
  display: none;
}

.video-wrapper.paused .icon-pause {
  display: none;
}

.slider-content-overlay{
    /* background: rgba(0, 0, 0, .4); */
    background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.6),
    rgba(0, 0, 0, 0.1)
  );
    z-index: 1;    
    display: block;
    width: 100%;
    height: 100%;
    position: absolute !important;
    top: 0;
    left: 0;
}

.slider-content {
    z-index: 2;
    position: absolute;
    width: 100%;
    height: auto;
    bottom: 0;
    left: 0;
    top:0;
    right:0;
}

.slider-content .hero-content {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* padding-bottom: 30px; */
    padding-top: 30px;
}

.slider-content .hero-content .hero-title {
    color: #fff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.35), 0 0 6px rgba(255, 255, 255, 0.35);
}

.slider-content .hero-content .hero-subtitle {
    color: #fff;
}

/* ——— Home hero: split layout (text left, framed image right + overlap) ——— */
.hero-section--split {
    --hero-accent-blue: #1e5bb8;
    --hero-badge-gold: #c77b0a;
    --hero-panel-bg: #ffffff;
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    box-sizing: border-box;
}

/* KPI strip removed from index2.njk — hide if an old built HTML or CDN cache still serves it */
.hero-section--split .hero-split__kpi,
.hero-split__kpi {
    display: none !important;
}

/* VMRF / Deemed University badge removed from template — hide stale markup */
.hero-section--split .hero-split__badge {
    display: none !important;
}

/* Full-bleed chain (avoids right “gutter” past section background) */
.hero-section--split > .container-fluid,
.hero-section--split .row,
.hero-section--split .video-wrapper--split {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

@media (min-width: 1200px) {
    .hero-section--split > .container-fluid.px-0 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

.hero-section--split .video-wrapper--split {
    height: auto;
    min-height: clamp(420px, 72vh, 820px);
    display: flex;
    align-items: center;
    padding: clamp(32px, 5vw, 72px) 0;
}

.hero-section--split .video-wrapper--split.video-wrapper--split-media-only {
    min-height: clamp(280px, 50vh, 560px);
    padding: clamp(24px, 4vw, 48px) 0;
}

.hero-section--split .hero-split {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(1rem, 2.2vw, 2rem);
    align-items: stretch;
    width: 100%;
    max-width: min(1320px, 100%);
    margin: 0 auto;
    /* Symmetric horizontal padding — avoids extra “empty” space on the right */
    padding-left: clamp(20px, 4vw, 56px);
    padding-right: clamp(20px, 4vw, 56px);
    position: relative;
    box-sizing: border-box;
}

/* Text + image: wider copy column, separate media card */
.hero-section--split .hero-split--with-media {
    grid-template-columns: minmax(0, 1.55fr) minmax(260px, min(32vw, 480px));
}

.hero-section--split .hero-split--media-only {
    grid-template-columns: 1fr;
    max-width: min(1100px, 100%);
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(20px, 4vw, 48px);
    padding-right: clamp(20px, 4vw, 48px);
}

.hero-section--split .hero-split--no-image {
    grid-template-columns: 1fr;
}

.hero-section--split .hero-split--no-image .hero-split__card--text,
.hero-section--split .hero-split__card--text-only {
    max-width: min(52rem, 100%);
    width: 100%;
    margin-left: 0;
    margin-right: auto;
}

/* Copy card (left) */
.hero-section--split .hero-split__card--text {
    background: var(--hero-panel-bg);
    border-radius: clamp(18px, 2.2vw, 28px);
    overflow: hidden;
    box-shadow:
        0 8px 40px rgba(0, 33, 71, 0.1),
        0 2px 8px rgba(0, 33, 71, 0.04),
        0 1px 0 rgba(255, 255, 255, 0.85) inset;
    border: 1px solid rgba(0, 33, 71, 0.08);
    position: relative;
    z-index: 2;
    box-sizing: border-box;
    min-width: 0;
}

.hero-section--split .hero-split__card-text {
    padding: clamp(1.35rem, 3.2vw, 2.75rem) clamp(1.35rem, 3vw, 2.75rem);
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.hero-section--split .hero-split--with-media .hero-split__card-text {
    padding-right: clamp(1.5rem, 3.2vw, 2.85rem);
}

.hero-section--split .hero-split__card-text .slider-content {
    width: 100%;
    max-width: none;
}

/* Image card — same treatment as .campus-video-section .campus-video */
.hero-section--split .hero-split__campus-video.campus-video {
    background-color: var(--white);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 20px;
    padding: 12px;
    min-height: clamp(260px, 48vh, 580px);
    display: flex;
    flex-direction: column;
    align-self: stretch;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
}

.hero-section--split .hero-split__campus-video .hero-split__figure {
    margin: 0;
    flex: 1;
    min-height: 0;
    border: none;
    border-radius: 20px;
    overflow: hidden;
    background: #e8eef5;
    display: flex;
}

.hero-section--split .hero-split__campus-video .hero-split__figure img {
    width: 100%;
    height: 100%;
    min-height: clamp(220px, 40vh, 520px);
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 20px;
}

/* Heading-only hero: legacy text column (unused when card present) */
.hero-section--split .hero-split__text {
    position: relative;
    z-index: 2;
    padding-right: clamp(0.25rem, 2vw, 1.5rem);
    min-width: 0;
    align-self: stretch;
}

/* Same typography as .campus-video-section .section-heading p.badge (e.g. “CAMPUS TOUR”) */
.hero-section--split .hero-split__institution {
    margin: 0;
    padding: 0;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    color: var(--accent-color);
    font-family: "Montserrat", sans-serif;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    line-height: 1.2;
    display: inline-block;
    max-width: 100%;
}

/* Image-only hero (no heading) */
.hero-section--split .hero-split__visual {
    position: relative;
    z-index: 3;
    margin-left: 0;
    justify-self: stretch;
    min-width: 0;
    max-width: min(1100px, 100%);
    margin-right: auto;
    margin-left: auto;
}

.hero-section--split .hero-split--media-only .hero-split__visual {
    margin-left: auto;
    margin-right: auto;
}

.hero-section--split .video-wrapper--split .slider-content {
    position: static;
    inset: auto;
    width: 100%;
    height: auto;
    z-index: auto;
}

.hero-section--split .slider-content .hero-content {
    height: auto;
    justify-content: flex-start;
    padding-top: 0;
    padding-bottom: 0;
}

/* Split hero: stacked headline (serif navy + blue italic line + institution) */
.hero-section--split .slider-content .hero-content.hero-content--split {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
}

.hero-section--split .hero-split__headline {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    /* One step between title / carousel / institution; same step before subtitle (no extra margin-bottom) */
    row-gap: clamp(0.5rem, 1.2vw, 0.7rem);
    padding-bottom: clamp(0.5rem, 1.2vw, 0.7rem);
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
}

.hero-section--split .hero-split__headline .hero-title--split {
    margin: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(0.25rem, 0.8vw, 0.45rem);
}

.hero-section--split .hero-title--split > .hero-title__line {
    display: block;
    width: 100%;
}

.hero-section--split .hero-split__title-carousel-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: clamp(0.35rem, 1.2vw, 0.65rem);
    row-gap: 0.12rem;
    width: max-content;
    max-width: 100%;
    box-sizing: border-box;
}

.hero-section--split .hero-split__title-carousel-row .hero-title__line {
    display: inline;
    width: auto;
    flex: 0 1 auto;
}

.hero-section--split .hero-split__title-carousel-row .word-carousel.word-carousel--split {
    display: inline-block;
    vertical-align: baseline;
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
}

.hero-section--split .slider-content .hero-content .hero-title,
.hero-section--split .slider-content .hero-content .hero-title.hero-title--split {
    font-family: "Montserrat", sans-serif;
    color: var(--primary-blue-color);
    text-shadow: none;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.08;
    font-size: clamp(1.5rem, 2.4vw + 0.55rem, 2.2rem);
}

/* Rotating words: Montserrat (site default), italic accent */
.hero-section--split .word-carousel.word-carousel--split {
    display: block;
    margin: 0;
    min-height: 1.12em;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-style: italic;
    font-size: clamp(2.1rem, 3.8vw + 0.9rem, 3.25rem);
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--hero-accent-blue);
}

.hero-section--split .hero-split__headline > .word-carousel.word-carousel--split {
    min-width: min(14ch, 100%);
}

.hero-section--split .changing-text.changing-text--split {
    text-align: left;
    display: inline-block;
    position: relative;
    height: 1.1em;
    overflow: hidden;
    vertical-align: bottom;
    color: inherit;
    text-shadow: none;
}

.hero-section--split .changing-text.changing-text--split span {
    display: block;
    line-height: 1.1em;
    animation: heroSplitWords 7.5s cubic-bezier(0.45, 0, 0.2, 1) infinite;
}

@keyframes heroSplitWords {
    0%,
    26% {
        transform: translateY(0);
    }
    33%,
    59% {
        transform: translateY(-100%);
    }
    66%,
    92% {
        transform: translateY(-200%);
    }
    100% {
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-section--split .changing-text.changing-text--split span {
        animation: none;
    }

    .hero-section--split .changing-text.changing-text--split {
        height: auto;
    }

    .hero-section--split .changing-text.changing-text--split span:not(:first-child) {
        display: none;
    }
}

/* Body copy before CTAs */
.hero-section--split .slider-content .hero-content .hero-subtitle,
.hero-section--split .slider-content .hero-content .hero-subtitle.hero-subtitle--split {
    font-family: "Montserrat", sans-serif;
    color: var(--text-light);
    max-width: 38rem;
    line-height: 1.55;
    margin: 0 0 clamp(1.1rem, 2vw, 1.5rem);
    font-size: clamp(0.8125rem, 0.2vw + 0.78rem, 0.9375rem);
    font-weight: 500;
    opacity: 1;
}

.hero-section--split .hero-split--with-media .slider-content .hero-content .hero-subtitle {
    max-width: none;
}

/* CTA row: gold primary, navy secondary, outline tertiary (reference) */
.hero-section--split .hero-buttons.hero-buttons--split {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 0.75rem;
    margin: 0 0 clamp(1.35rem, 2.5vw, 1.85rem);
}

.hero-section--split .hero-buttons .btn-hero-split {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 10px;
    padding: 0.85rem 1.35rem;
    text-decoration: none;
    border-width: 2px;
    border-style: solid;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
    z-index: 1;
}

.hero-section--split .hero-buttons .btn-hero-split:hover {
    transform: translateY(-1px);
}

/* Shimmer effect (opt-in via .btn-shimmer) */
.btn-shimmer {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.btn-shimmer::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            110deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.14) 18%,
            rgba(255, 255, 255, 0.34) 34%,
            rgba(255, 255, 255, 0.12) 50%,
            rgba(255, 255, 255, 0) 66%
        );
    background-size: 220% 220%;
    background-position: 120% 0%;
    opacity: 0.75;
    pointer-events: none;
    z-index: 0;
    filter: blur(0.2px);
    animation: btnShimmerSurface 2.2s ease-in-out infinite;
}

.btn-shimmer > * {
    position: relative;
    z-index: 1;
}

.btn-shimmer:hover::after,
.btn-shimmer:focus-visible::after {
    opacity: 1;
    animation-duration: 1.35s;
}

@keyframes btnShimmerSurface {
    0% { background-position: 120% 0%; opacity: 0; }
    18% { opacity: 1; }
    100% { background-position: -40% 100%; opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .btn-shimmer:hover::after,
    .btn-shimmer:focus-visible::after {
        animation: none;
        opacity: 0;
    }

    .btn-shimmer::after {
        animation: none;
        opacity: 0;
    }
}

.hero-section--split .hero-buttons .btn-hero-split--gold .btn-arrow {
    display: inline-flex;
    align-items: center;
}

.hero-section--split .hero-buttons .btn-hero-split--gold .btn-arrow img {
    width: 1em;
    height: auto;
    display: block;
}

.hero-section--split .hero-buttons .btn-hero-split--navy {
    background-color: var(--primary-blue-color);
    border-color: var(--primary-blue-color);
    color: #fff;
    box-shadow: 0 8px 22px rgba(0, 33, 71, 0.22);
}

.hero-section--split .hero-buttons .btn-hero-split--navy:hover {
    color: #fff;
    filter: brightness(1.06);
}

.hero-section--split .hero-buttons .btn-hero-split--outline {
    background-color: #fff;
    border-color: rgba(0, 33, 71, 0.18);
    color: var(--primary-blue-color);
    box-shadow: none;
}

.hero-section--split .hero-buttons .btn-hero-split--outline:hover {
    border-color: var(--primary-blue-color);
    background-color: #fafbfd;
    color: var(--primary-blue-color);
}

/* Framed image when not inside unified card */
.hero-section--split .hero-split__figure--standalone {
    margin: 0;
    border: clamp(10px, 1.2vw, 16px) solid var(--white);
    border-radius: clamp(28px, 3.5vw, 48px);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0, 33, 71, 0.12);
    background: var(--white);
}

.hero-section--split .hero-split__figure--standalone img {
    display: block;
    width: 100%;
    height: clamp(260px, 52vh, 560px);
    object-fit: cover;
    object-position: center;
}

.hero-section--split .video-wrapper--split-media-only .hero-split__figure--standalone img {
    height: clamp(220px, 45vh, 480px);
}

/* Trust / accreditation strip directly under hero video-wrapper */
.hero-trust-bar {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    background: #fff;
    border-bottom: 2px solid var(--primary-blue-color);
    box-sizing: border-box;
}

/* Trust strip inside split hero copy column (below CTAs) */
.hero-section--split .hero-content--split .hero-trust-bar--in-split {
    margin-top: clamp(0.425rem, 1vw, 0.675rem);
    border-bottom: none;
    border-top: none;
    background: transparent;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__inner {
    padding-left: 0;
    padding-right: 0;
    padding-top: clamp(0.175rem, 0.45vw, 0.275rem);
    padding-bottom: 0;
    margin: 0;
    max-width: none;
    overflow-x: hidden;
    overflow-y: hidden;
    scrollbar-width: none;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__inner::-webkit-scrollbar {
    display: none;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__marquee {
    overflow: hidden;
    width: 100%;
    min-width: 0;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 5%, #000 95%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 5%, #000 95%, transparent 100%);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__marquee-track {
    display: flex;
    width: max-content;
    animation: heroTrustBarMarquee 42s linear infinite;
    will-change: transform;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__marquee:hover .hero-trust-bar__marquee-track {
    animation-play-state: paused;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--marquee {
    width: max-content;
    min-width: 0;
    max-width: none;
    flex-shrink: 0;
    justify-content: flex-start;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--marquee.hero-trust-bar__list--logos {
    min-width: 0;
}

/* Reserve strip height for logo row only (text fallback is single-line) */
.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__marquee:has(.hero-trust-bar__list--logos) {
    min-height: calc(3.5rem + 2.75em + 0.25rem);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list {
    gap: clamp(0.25rem, 1vw, 0.875rem);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--logos {
    gap: clamp(0.325rem, 1vw, 0.675rem);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__item {
    gap: 0.25rem;
    padding: 0 clamp(0.175rem, 0.6vw, 0.425rem);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__item--logo {
    gap: 0.2rem;
    padding: 0 clamp(0.1rem, 0.4vw, 0.25rem);
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__item--logo .hero-trust-bar__logo {
    width: 100%;
    max-width: min(11rem, 100%);
    height: clamp(3.125rem, 8vw, 3.625rem);
    min-height: clamp(3.125rem, 8vw, 3.625rem);
    max-height: clamp(3.125rem, 8vw, 3.625rem);
    flex-shrink: 0;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--logos .hero-trust-bar__logo-img,
.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--logos .hero-trust-bar__logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    aspect-ratio: 200 / 80;
    object-fit: contain;
    object-position: center;
}

.hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__caption {
    min-height: 1.375em;
    line-height: 1.3;
}

@keyframes heroTrustBarMarquee {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__marquee-track {
        animation: none;
        transform: none;
        min-width: 0;
    }

    .hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--marquee {
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
        row-gap: 0.175rem;
    }

    .hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__list--marquee .hero-trust-bar__item[aria-hidden="true"] {
        display: none;
    }
}

.hero-trust-bar__inner {
    max-width: min(1320px, 100%);
    width: 100%;
    margin: 0 auto;
    padding: clamp(0.55rem, 1.2vw, 0.9rem) clamp(16px, 3vw, 48px);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    box-sizing: border-box;
}

/* Text strip: stays within viewport (no max-content page stretch) */
.hero-trust-bar__list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: clamp(0.5rem, 2vw, 1.75rem);
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.hero-trust-bar__list--logos {
    width: max-content;
    min-width: 100%;
    max-width: none;
    justify-content: center;
    align-items: flex-start;
    gap: clamp(0.65rem, 2vw, 1.35rem);
}

.hero-trust-bar__item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 0 0 auto;
    justify-content: center;
    text-align: center;
    min-width: max-content;
    position: relative;
    padding: 0 clamp(0.35rem, 1.2vw, 0.85rem);
    font-family: "Montserrat", sans-serif;
    font-size: clamp(0.65rem, 0.9vw + 0.5rem, 0.8125rem);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--primary-blue-color);
}

.hero-trust-bar__item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 1.35em;
    background: rgba(0, 33, 71, 0.18);
}

/* Logo slot: hidden until you add an <img> (or SVG) inside .hero-trust-bar__logo */
.hero-trust-bar__logo:empty {
    display: none;
}

.hero-trust-bar__logo:not(:empty) {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.hero-trust-bar__logo-img,
.hero-trust-bar__logo img {
    display: block;
    max-height: clamp(28px, 4vw, 40px);
    width: auto;
    max-width: min(120px, 22vw);
    object-fit: contain;
    object-position: center;
}

.hero-trust-bar__label {
    display: block;
    white-space: nowrap;
    hyphens: manual;
    -webkit-hyphens: manual;
    word-break: keep-all;
}

/* Logo row (Strapi): scroll inside .hero-trust-bar__inner — does not widen #wrap */
.hero-trust-bar__item--logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0.4rem;
    padding: 0 clamp(0.2rem, 0.8vw, 0.5rem);
    min-width: 0;
    max-width: min(11rem, 28vw);
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: normal;
    text-transform: none;
    color: inherit;
    text-align: center;
}

.hero-trust-bar__caption {
    display: block;
    width: 100%;
    font-family: "Montserrat", sans-serif;
    font-size: clamp(0.5625rem, 0.65vw + 0.48rem, 0.6875rem);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--primary-blue-color);
    text-wrap: balance;
}

.hero-trust-bar__item--logo::after {
    display: none !important;
}

.hero-trust-bar__item--logo .hero-trust-bar__logo {
    background: var(--white);
    border-radius: 12px;
    padding: clamp(6px, 1vw, 10px) clamp(10px, 1.4vw, 14px);
    border: 1px solid rgba(51, 109, 154, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    box-sizing: border-box;
}

/* Empty logo slots: base :empty rule loses to .item--logo .logo — fix + hide orphan list cells */
.hero-trust-bar__item--logo .hero-trust-bar__logo:empty {
    display: none !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

.hero-trust-bar__item--logo:not(:has(.hero-trust-bar__logo img)) {
    display: none !important;
}

.hero-trust-bar__list--logos .hero-trust-bar__logo-img,
.hero-trust-bar__list--logos .hero-trust-bar__logo img {
    max-height: clamp(34px, 4.8vw, 48px);
    max-width: min(168px, 30vw);
    width: auto;
    height: auto;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 991.98px) {
    .hero-trust-bar__list {
        justify-content: flex-start;
        gap: clamp(0.65rem, 2.5vw, 1.25rem);
    }

    .hero-trust-bar__item {
        padding: 0.2rem 0.5rem;
    }

    .hero-trust-bar__item--logo {
        max-width: min(9.5rem, 42vw);
    }

    .hero-trust-bar__item::after {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .hero-trust-bar__item {
        justify-content: flex-start;
        text-align: left;
        padding: 0.35rem 0.5rem;
    }
}

@media (max-width: 991.98px) {
    .hero-section--split .hero-split {
        padding-left: clamp(18px, 4vw, 40px);
        padding-right: clamp(18px, 4vw, 40px);
        max-width: 100%;
    }

    .hero-section--split .hero-split--with-media {
        grid-template-columns: 1fr;
    }

    .hero-section--split .hero-split__card--text {
        order: 2;
    }

    .hero-section--split .hero-split__campus-video.campus-video {
        order: 1;
        min-height: clamp(220px, 38vh, 420px);
    }

    .hero-section--split .hero-split__card-text {
        padding-bottom: clamp(1rem, 2vw, 1.5rem);
    }

    .hero-section--split .hero-split__campus-video .hero-split__figure img {
        min-height: clamp(200px, 36vh, 380px);
    }

    .hero-section--split .hero-split__visual {
        order: 0;
    }

    .hero-section--split .hero-split--media-only .hero-split__visual {
        order: 0;
    }
}

@media (max-width: 767.98px) {
    .hero-section--split .video-wrapper--split {
        min-height: 0;
        padding: 16px 0 24px;
    }

    .hero-section--split .hero-split {
        gap: 0.75rem;
        padding-left: clamp(12px, 3.5vw, 20px);
        padding-right: clamp(12px, 3.5vw, 20px);
    }

    /* Reduce card inner padding on mobile */
    .hero-section--split .hero-split__card-text {
        padding: clamp(1rem, 4vw, 1.5rem) clamp(0.875rem, 3.5vw, 1.25rem);
    }

    /* Image first on mobile */
    .hero-section--split .hero-split__campus-video.campus-video {
        min-height: clamp(200px, 52vw, 300px);
    }

    .hero-section--split .hero-split__campus-video .hero-split__figure img {
        min-height: clamp(180px, 48vw, 280px);
    }

    /* Trust bar: tighter item padding on mobile */
    .hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__item {
        padding: 0 clamp(0.1rem, 0.4vw, 0.2rem);
    }

    .hero-section--split .hero-content--split .hero-trust-bar--in-split .hero-trust-bar__item--logo {
        padding: 0 clamp(0.05rem, 0.3vw, 0.15rem);
    }

    .hero-section--split .slider-content .hero-content .hero-title {
        max-width: none;
        margin: 0;
    }

    .hero-section--split .slider-content .hero-content .hero-title.hero-title--split {
        font-size: clamp(1.25rem, 4.5vw + 0.35rem, 1.65rem);
    }

    .hero-section--split .word-carousel.word-carousel--split {
        font-size: clamp(1.75rem, 8vw + 0.25rem, 2.35rem);
    }

    /* Two CTAs per row; equal-width columns; third CTA full width */
    .hero-section--split .hero-buttons.hero-buttons--split {
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 0.75rem;
        row-gap: 0.65rem;
        align-items: stretch;
        text-align: left;
    }

    .hero-section--split .hero-buttons .hero-btn-group {
        display: flex;
        flex-direction: column;
        min-width: 0;
        width: 100%;
        align-self: stretch;
    }

    .hero-section--split .hero-buttons .hero-btn-group > span.d-flex.flex-column:first-of-type {
        flex: 1 1 auto;
        min-height: 0;
        display: flex !important;
        flex-direction: column;
    }

    .hero-section--split .hero-buttons.hero-buttons--split .hero-btn-group:only-child {
        grid-column: 1 / -1;
    }

    .hero-section--split .hero-buttons.hero-buttons--split .hero-btn-group:nth-child(n + 3) {
        grid-column: 1 / -1;
    }

    .hero-section--split .hero-buttons .hero-btn-group.ms-md-3,
    .hero-section--split .hero-buttons .hero-btn-group.ms-md-2 {
        margin-left: 0 !important;
    }

    .hero-section--split .hero-buttons .hero-btn-group .note-text {
        flex-shrink: 0;
        margin-top: 0.35rem;
    }

    .hero-section--split .hero-buttons.hero-buttons--split .btn-hero-split {
        flex: 1 1 auto;
        width: 100%;
        min-height: 3.35rem;
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
    }
}

.rankings-section .swiper-button-next[aria-disabled="true"],
.rankings-section .swiper-button-prev[aria-disabled="true"],
.industry-carousel-section .swiper-button-next[aria-disabled="true"],
.industry-carousel-section .swiper-button-prev[aria-disabled="true"],
.facilities-section .swiper-button-next[aria-disabled="true"],
.facilities-section .swiper-button-prev[aria-disabled="true"],
.news-section .swiper-button-next[aria-disabled="true"],
.news-section .swiper-button-prev[aria-disabled="true"]{  
  cursor:not-allowed;
  opacity: 0.7;
  pointer-events: none;
  background-color: transparent!important;
  border: 2px solid var(--primary-blue-color);
}

.industry-swiper-wrap{
    margin-bottom: 4px;
}

.rankings-section .swiper-button-next[aria-disabled="true"] img,
.rankings-section .swiper-button-prev[aria-disabled="true"] img,
.industry-carousel-section .swiper-button-next[aria-disabled="true"] img,
.industry-carousel-section .swiper-button-prev[aria-disabled="true"] img,
.facilities-section .swiper-button-next[aria-disabled="true"] img,
.facilities-section .swiper-button-prev[aria-disabled="true"] img,
.news-section .swiper-button-next[aria-disabled="true"] img,
.news-section .swiper-button-prev[aria-disabled="true"] img{
    filter: none!important;
}

/* Course Finder Section */
.course-finder-card {
   background-color: var(--secondary-blue-color);
   border-radius: 20px;
   color: var(--white);
   padding:35px;
   /* margin-top: -130px; */
}

.course-finder-card .main-div{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.course-finder-card h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0;
      display: flex;
    flex-direction: column;
    gap: 10px;
}

.course-finder-card button span img{
    width: 18px;
    height: auto;    
}

.course-finder-card .form-select {
    border-radius:10px;
    padding: 0.75rem 2.25rem 0.75rem 1rem;
    font-weight: 500;
    font-size: 0.875rem;
    color:var(--secondary-blue-color);
    border:0;
}

.course-finder-card .form-select:focus {   
    border:0!important;
    box-shadow: none!important;
}

/* Course finder — section shell; premium CTA card */
.course-finder-section {
    background: var(--primary-text-color);
    padding: 56px 0 60px;
}
.course-finder-section .course-finder-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: rgba(12, 48, 92, 0.92) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35) !important;
    color: var(--white);
    padding: 28px 32px !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.25s ease;
}
.course-finder-section .course-finder-form {
    position: relative;
    z-index: 1;
}
.course-finder-section .course-finder-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.34) !important;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.42) !important;
}
.course-finder-section .course-finder-card h2.find-programme {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
    line-height: 1.05;
}
.course-finder-section .find-programme__eyebrow {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--accent-color);
    text-shadow: none;
}
.course-finder-section .find-programme__mid {
    font-size: clamp(1.35rem, 2.8vw, 1.85rem);
    font-weight: 700;
    color: rgba(255, 255, 255, 0.92);
    letter-spacing: -0.02em;
    text-shadow: none;
}
.course-finder-section .find-programme__title {
    font-size: clamp(1.85rem, 4.2vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #ffffff;
    text-shadow: none;
    padding-bottom: 0.02em;
}
/* Course finder department dropdown — clear “click to open” affordance */
.course-finder-section .course-finder-card .form-select.course-finder-select {
    --cf-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    min-height: 52px;
    padding: 0.85rem 3rem 0.85rem 1.15rem;
    font-family: var(--bs-btn-font-family, "Montserrat", sans-serif);
    font-size: var(--bs-btn-font-size, 0.7rem);
    font-weight: var(--bs-btn-font-weight, 700);
    letter-spacing: 0.02em;
    text-transform: uppercase;
    line-height: 1.25;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 12px;
    background-color: rgba(255, 255, 255, 0.14);
    background-image: var(--cf-select-chevron);
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1.125rem auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, transform 0.15s ease, color 0.2s ease;
}
.course-finder-section .course-finder-card .form-select.course-finder-select:invalid {
    color: rgba(255, 255, 255, 0.55);
}
.course-finder-section .course-finder-card .form-select.course-finder-select:hover {
    background-color: rgba(255, 255, 255, 0.22);
    border-color: rgba(255, 255, 255, 0.45);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.22);
    transform: translateY(-1px);
}
.course-finder-section .course-finder-card .form-select.course-finder-select:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.course-finder-section .course-finder-card .form-select.course-finder-select:focus {
    border-color: var(--accent-color) !important;
    box-shadow: 0 0 0 2px rgba(255, 182, 6, 0.35) !important;
    outline: none !important;
    background-color: rgba(255, 255, 255, 0.18);
    transform: translateY(0);
}
.course-finder-section .course-finder-card .form-select.course-finder-select:focus-visible {
    outline: 2px solid var(--accent-color) !important;
    outline-offset: 3px;
    box-shadow: none !important;
}
.course-finder-section .course-finder-card .form-select.course-finder-select option {
    font-family: "Montserrat", sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: none;
    color: var(--text-dark);
    background: var(--white);
}
/* Primary gold CTA: course finder SEARCH + hero Apply Now */
.course-finder-section .course-finder-card .btn.btn-primary {
    min-height: 52px;
    padding: 0.75rem 1rem;
    border: none !important;
    border-radius: 12px;
    color: var(--primary-blue-color) !important;
    background: linear-gradient(165deg, #ffd54a 0%, var(--accent-color) 45%, #e6a400 100%) !important;
    box-shadow:
        0 4px 14px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.hero-section--split .hero-buttons .btn-hero-split--gold {
    min-height: 52px;
    padding: 0.75rem 1rem;
    border: none !important;
    border-radius: 12px;
    color: var(--primary-blue-color) !important;
    background: linear-gradient(165deg, #ffd54a 0%, var(--accent-color) 45%, #e6a400 100%) !important;
    box-shadow:
        0 4px 14px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.course-finder-section .course-finder-card .btn.btn-primary:hover,
.hero-section--split .hero-buttons .btn-hero-split--gold:hover {
    color: var(--primary-blue-color) !important;
    transform: translateY(-2px);
    filter: none;
    box-shadow:
        0 8px 22px rgba(0, 0, 0, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.45);
}
.course-finder-section .course-finder-card .btn.btn-primary:focus-visible,
.hero-section--split .hero-buttons .btn-hero-split--gold:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
}
.course-finder-section .course-finder-card .btn.btn-primary img,
.hero-section--split .hero-buttons .btn-hero-split--gold .btn-arrow img {
    filter: brightness(0) saturate(100%) invert(10%) sepia(40%) saturate(2000%) hue-rotate(200deg);
    opacity: 0.9;
}
@media (max-width: 991.98px) {
    .course-finder-section .course-finder-card h2.find-programme {
        align-items: center;
        text-align: center;
        width: 100%;
    }
    .course-finder-section .course-finder-form__row > [class*="col-"] {
        display: flex;
        justify-content: center;
    }
    .course-finder-section .course-finder-form__row .form-select,
    .course-finder-section .course-finder-form__row .btn {
        max-width: 420px;
        width: 100%;
    }
}

/* Partners Section */
.partners-section {
    background-color: var(--white);
}

.partners-swiper {
    overflow: hidden;
}

.partners-swiper .swiper-wrapper {
    align-items: stretch;
}
.partner-card {
    background: #fff;
    border: 1px solid #B5B5B5;   
    min-height: 140px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: box-shadow 0.2s, background 0.2s;
    position: relative;
    cursor: pointer;
    height: 100%;
    padding: 24px 0 12px 0;
}

.marquee {
  width: 100%;
  overflow: hidden;
}

.marquee__inner-wrap {
  height: 100%;
  width: 100%;
}

.marquee__img {
    width: max(8rem, 20vw);
    height: 8rem;
    background: #fff;
    border: 1px solid #B5B5B5;   
    min-height: 160px;
    position: relative;
    /* cursor: pointer; */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.marquee__inner--ltr .marquee__img{
 border-right: 0!important;
}

.marquee__inner--rtl .marquee__img{
 border-top:0!important;
 border-left: 0!important;
}

.marquee__img:hover{
    background: var(--light-blue);
}
.marquee__img a{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
}

.marquee__img img {
    max-width: 100%;
    max-height: 100px;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    width:160px;
    height: auto;
}

.marquee__img .partner-arrow{
    display: none;
}

.marquee__img .partner-arrow img{
    max-width:none;
    max-height: none;
    object-fit:none;
    display: block;
    margin: 0 auto;
    width:16px;
    height:auto;
}

.marquee__inner {
  height: 100%;
  width: max-content;
  align-items: center;
  display: flex;
  position: relative;
  /* animation: marquee 25s linear infinite; */
  will-change: transform;
}

/* Marquee animation for left-to-right */
.marquee__inner--ltr {   
    animation: marquee-ltr 25s linear infinite;
}

/* Marquee animation for right-to-left */
.marquee__inner--rtl {   
    animation: marquee-rtl 25s linear infinite;
}

@keyframes marquee-ltr {
    0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
  /* 100% {
    transform: translateX(0);
  } */
}

@keyframes marquee-rtl {
    0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0px);
  }
  /* 100% {
    transform: translateX(-200px);
  } */
}

/**Modal**/
.partner-logo-modal .modal-dialog-scrollable .modal-content{
    border:0!important;
    border-radius: 20px!important;
}

.partner-logo-modal .modal-dialog-scrollable .modal-content .modal-body{
    padding:40px;
    position:relative;
}

.partner-logo-modal .modal-dialog-scrollable .modal-content .modal-body .btn{
    position: absolute;
    top:40px;
    right:40px;
}

.partner-logo-modal .modal-body p{
    font-size: 16px;
    font-weight: 600;
    color:#5D5D5D;
    margin-bottom: 0;
}

.partner-logo-modal .modal-body h2{
    font-size:20px;
    font-weight: 700;
    color:var(--primary-text-color);
}

.partner-logo-modal .modal-body .partner-modal-head{
    color: var(--accent-color)!important;
}

.partner-logo-modal .highlight-list{
    margin-bottom: 20px;
}

.partner-logo-modal .highlight-list:last-child{
    margin-bottom: 0;
}

.partner-logo-modal .highlight-list .list-head{
    color:var(--text-dark);
}

.btn-close-gray {
    background-color: #F2f2f2;
    border:0;
    border-radius:10px;
    transition: all 0.3s ease;
    padding: 15px 26px;
    color:var(--text-dark);
     position: relative;   
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
   
}

.btn-close-gray .btn-icon{
    margin-top:-2px;
}

.btn-close-gray:hover{
    background-color: #F2f2f2;
}

section{
    padding-top:50px;
}

/* Campus Info Section */
.campus-info-section {   
    padding: 50px 0;
    margin-top: 50px;
    position: relative;
    overflow: hidden;
}

.campus-info-swiper-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
}

.campusInfoSwiper {
    width: 100%;  
    padding-bottom:50px;
}

.campus-info-card {
    background: #fff;
    border-radius: 20px;
    /* box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1); */
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 420px;
    transition: box-shadow 0.3s;
    position: relative;
}

.campus-info-img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    object-position: top;
}

.campus-info-content {
    padding: 32px 20px;
    text-align: left;
}

.campus-info-title {
    display: flex;
    align-items:flex-start;
    font-size: 24px;
    font-weight: 700;
    color: var(--primary-text-color);
    margin-bottom: 12px;   
}

.campus-info-icon {
    width: 32px;
    height: 32px;
}

.campus-info-content p,
.campus-info-content .description p {
   color:#5D5D5D;
   font-weight: 500;
   font-size: 16px;
   margin-bottom: 0;
}

.campusInfoSwiper .swiper-pagination,
.contentSwiper .swiper-pagination,
.testimonialSwiper .swiper-pagination,
.testimonialSwiper2 .swiper-pagination{
    bottom: 10px !important;
}

.campusInfoSwiper .swiper-pagination-bullet,
.contentSwiper .swiper-pagination-bullet,
.testimonialSwiper .swiper-pagination-bullet,
.testimonialSwiper2 .swiper-pagination-bullet,
.swiper-pagination-bullet {
    background: rgba(51, 109, 154, 0.8);
    width: 8px;
    height: 8px;
    margin: 0 3px !important;
    transition: opacity 0.3s, background 0.3s;
}

.campusInfoSwiper .swiper-pagination-bullet-active,
.contentSwiper .swiper-pagination-bullet-active,
.testimonialSwiper .swiper-pagination-bullet-active,
.testimonialSwiper2 .swiper-pagination-bullet-active,
.swiper-pagination-bullet-active {
    width:35px;
    height:8px;
    border-radius: 16px;
    background:var(--primary-blue-color);
    opacity: 1;
}

.theme-light-bg .swiper-pagination-bullet{
    background: rgba(51, 109, 154, 0.8);
}
.theme-light-bg .swiper-pagination-bullet-active{
    background:var(--primary-blue-color)!important;
}

.theme-dark-bg .swiper-pagination-bullet{
    background: #ffffff;
    opacity: 0.4;    
}
.theme-dark-bg .swiper-pagination-bullet-active{
    background: var(--bg-light)!important;
    opacity: 1!important;
}

.campusInfoSwiper .swiper-slide .campus-info-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(37, 64, 141, 0.7);
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.5s ease;
  border-radius: 20px;
  z-index: 1;
}

.campusInfoSwiper .swiper-slide.swiper-slide-active .campus-info-card::after{
    opacity: 0;
}

/* Rankings Section */
.rankings-section{    
    padding: 60px 0;   
    position: relative;
    overflow: hidden;
}

/* Eyebrow badges on light sections — no white pill (overrides previous !important) */
.theme-light-bg .section-heading p.badge{
    background-color: transparent !important;
    background: transparent !important;
    color: var(--accent-color) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    height: auto !important;
    box-shadow: none !important;
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.20em !important;
    line-height: 1.2 !important;
    display: inline-block !important;
}

.highlighted-section .highlighted-card p.badge,
.theme-light-bg.highlighted-section-full .overview-content p.badge{
    background-color: var(--white)!important;
    color: var(--primary-text-color)!important;
    border:1px solid #336D9A33;
}

.rankingsSwiper {
    width: 100%;
    padding-bottom: 0;
    padding-top:60px;
}

.rankingsSwiper .swiper-slide{
    display: flex;
    flex-direction: column;   
}

.rankingsSwiper .swiper-wrapper,
.industrySwiper .swiper-wrapper {
    align-items: stretch;
    display: grid;
    grid-auto-flow: column;
}

.ranking-card {
    background: var(--primary-text-color);
    border-radius: var(--radius-small);  
    padding:18px;
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    min-height: 200px;
    height: 100%;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}

.ranking-card:hover {
    transform: translateY(-5px);
    /* box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1); */
}

.ranking-card-logo {
    background: var(--white);
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70px;
    width: 100%;
    border: 1px solid #336D9A33;
    margin-top:-70px;
}

.ranking-card-content{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: auto;
}

.ranking-card-logo img {   
    width: 200px;
    height: auto;   
}

.ranking-card-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--light-blue);
    margin-bottom: 18px;
    text-align: left;
    overflow: hidden;
    /* display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical; */
}

.ranking-card-title p{
    margin-bottom: 0;
    font-size: 13px;
}

.ranking-card-title h6{
    font-size: 20px;
    color:var(--accent-color);
    font-weight: 800;
}

.ranking-card-link {
    color: var(--primary-text-color);
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    text-decoration: none;
    /* font-size: 0.875rem;
    letter-spacing: 0.02em; */
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: color 0.2s;
}

/* .ranking-card-link span img{
    filter: brightness(0.4);
} */

.ranking-card-link span,
.blogs-link a .ranking-card-link span img {
    display: inline-flex;
    transition: transform 0.3s ease;
}


.ranking-card-link:hover span,
.blogs-link a:hover .ranking-card-link span img {
    transform: translateX(6px);
}

/* Department grid — Explore links use theme yellow */
.department-section .grid-card .ranking-card-link {
    color: var(--accent-color) !important;
}
.department-section .grid-card .ranking-card-link:hover {
    color: #ffc933 !important;
}
.department-section .grid-card .ranking-card-link span img {
    filter: brightness(0) saturate(100%) invert(72%) sepia(98%) saturate(1350%) hue-rotate(359deg) brightness(103%) contrast(102%);
}
.department-section .grid-card .ranking-card-link:hover span img {
    filter: brightness(0) saturate(100%) invert(80%) sepia(45%) saturate(800%) hue-rotate(359deg) brightness(105%) contrast(102%);
}

.extra-page section.theme-dark-bg .ranking-card{
 background: var(--light-blue);
}
.extra-page section.theme-dark-bg .ranking-card-title{
 color: var(--text-dark)!important;
}

.extra-page section.theme-dark-bg .rankingsSwiper .swiper-button-next,
.extra-page section.theme-dark-bg .rankingsSwiper .swiper-button-prev,
section.theme-dark-bg .rankingsSwiper .swiper-button-next,
section.theme-dark-bg .rankingsSwiper .swiper-button-prev{
    background-color: var(--light-blue);    
    color:var(--primary-blue-color);    
    border: 2px solid var(--light-blue);
}

.extra-page section.theme-dark-bg .rankingsSwiper .swiper-button-prev img,
.extra-page section.theme-dark-bg .rankingsSwiper .swiper-button-next img,
section.theme-dark-bg .rankingsSwiper .swiper-button-prev img,
section.theme-dark-bg .rankingsSwiper .swiper-button-next img{
    filter:none!important;
}

.extra-page section.theme-dark-bg .swiper-pagination-current,
section.theme-dark-bg .swiper-pagination-current{
    color:#fff;
}
.extra-page section.theme-dark-bg .swiper-custom-pagination,
section.theme-dark-bg .swiper-custom-pagination{
    color:rgba(255, 255, 255, 0.64);
}

.extra-page section.theme-dark-bg .swiper-scrollbar-drag,
section.theme-dark-bg .swiper-scrollbar-drag{
    background: var(--light-blue);
}

.rankings-swiper-footer,
.news-swiper-footer{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 32px;
    padding: 0 16px 0 24px;
}


  .rankingsSwiper .swiper-button-next,
  .rankingsSwiper .swiper-button-prev,
  .industrySwiper .swiper-button-next,
  .industrySwiper .swiper-button-prev,
  .newsSwiper .swiper-button-next,
  .newsSwiper .swiper-button-prev,
  .eventSwiper .swiper-button-next,
  .eventSwiper .swiper-button-prev,
  .news-swiper-nav .swiper-button-next,
  .news-swiper-nav .swiper-button-prev,
  .facilities-swiper .swiper-button-next,
  .facilities-swiper .swiper-button-prev
  {
    position: relative!important;
    width:50px;
    height: 50px;  
    border-radius:10px;   
    background-color: var(--primary-blue-color);    
    color:var(--white);
    transition: all 0.2s ease;
    border: 2px solid var(--primary-blue-color);
  }


  .rankingsSwiper .swiper-button-next::after,
  .rankingsSwiper .swiper-button-prev::after,
  .industrySwiper .swiper-button-next::after,
  .industrySwiper .swiper-button-prev::after,
  .newsSwiper .swiper-button-next::after,
  .newsSwiper .swiper-button-prev::after,
  .eventSwiper .swiper-button-next::after,
  .eventSwiper .swiper-button-prev::after,
  .news-swiper-nav .swiper-button-next::after,
  .news-swiper-nav .swiper-button-prev::after,
  .facilities-swiper .swiper-button-next::after,
  .facilities-swiper .swiper-button-prev::after
  {
    display: none !important;
  }

  
  .rankingsSwiper .swiper-button-next img,
  .rankingsSwiper .swiper-button-prev img,
  .industrySwiper .swiper-button-next img,
  .industrySwiper .swiper-button-prev img,
  .newsSwiper .swiper-button-next img,
  .newsSwiper .swiper-button-prev img,
  .eventSwiper .swiper-button-next img,
  .eventSwiper .swiper-button-prev img,
  .news-swiper-nav .swiper-button-next img,
  .news-swiper-nav .swiper-button-prev img,
  .facilities-swiper .swiper-button-next img,
  .facilities-swiper .swiper-button-prev img
  {
    width:26px;
    height: auto;
  }

.rankingsSwiper .swiper-button-prev img,
.industrySwiper .swiper-button-prev img,
.newsSwiper .swiper-button-prev img,
.eventSwiper .swiper-button-prev img,
.news-swiper-nav .swiper-button-prev img,
.facilities-swiper .swiper-button-prev img,
.career-swiper-nav .swiper-button-prev img {
    transform: rotate(180deg);
}

.rankingsSwiper .swiper-button-prev img,
.rankingsSwiper .swiper-button-next img,
.industrySwiper .swiper-button-prev img,
.industrySwiper .swiper-button-next img,
.newsSwiper .swiper-button-prev img,
.newsSwiper .swiper-button-next img,
.eventSwiper .swiper-button-prev img,
.eventSwiper .swiper-button-next img,
.news-swiper-nav .swiper-button-prev img,
.news-swiper-nav .swiper-button-next img,
.facilities-swiper .swiper-button-prev img,
.facilities-swiper .swiper-button-next img{
    filter: brightness(0) invert(1);
}

.rankingsSwiper .swiper-pagination,
.industrySwiper .swiper-pagination{
    bottom:0!important;
    position:relative;
}

/* .rankingsSwiper .swiper-button-next.swiper-button-disabled img,
.rankingsSwiper .swiper-button-prev.swiper-button-disabled img{
    filter:none;
} */


.swiper-scrollbar{
    position: relative!important;
    background: rgba(51, 109, 154, 0.5); 
    height: 2px!important;
    top: auto !important;
    bottom: auto !important;
}

.swiper-scrollbar-drag{
    background: var(--primary-blue-color); 
}

.swiper-custom-pagination {
  font-size: 18px;
  font-weight: 600;
  color:rgba(0, 33, 71, 0.5); 
  text-align: left;
  width: 100%;
}

.swiper-pagination-current {
     color: var(--primary-blue-color);
}



section.theme-dark-bg .rankingsSwiper .swiper-button-next,
section.theme-dark-bg .rankingsSwiper .swiper-button-prev,
section.theme-dark-bg .industrySwiper .swiper-button-next,
section.theme-dark-bg .industrySwiper .swiper-button-prev,
section.theme-dark-bg .newsSwiper .swiper-button-next,
section.theme-dark-bg .newsSwiper .swiper-button-prev,
section.theme-dark-bg .eventSwiper .swiper-button-next,
section.theme-dark-bg .eventSwiper .swiper-button-prev,
section.theme-dark-bg .news-swiper-nav .swiper-button-next,
section.theme-dark-bg .news-swiper-nav .swiper-button-prev,
section.theme-dark-bg .facilities-swiper .swiper-button-next,
section.theme-dark-bg .facilities-swiper .swiper-button-prev
  {
    position: relative!important;
    width:50px;
    height: 50px;  
    border-radius:10px;   
    background-color: var(--light-blue);    
    color:var(--white);
    transition: all 0.2s ease;
    border: 2px solid var(--light-blue);
  }

 section.theme-dark-bg .rankingsSwiper .swiper-button-prev img,
section.theme-dark-bg .rankingsSwiper .swiper-button-next img,
section.theme-dark-bg .industrySwiper .swiper-button-prev img,
section.theme-dark-bg .industrySwiper .swiper-button-next img,
section.theme-dark-bg .newsSwiper .swiper-button-prev img,
section.theme-dark-bg .newsSwiper .swiper-button-next img,
section.theme-dark-bg .eventSwiper .swiper-button-prev img,
section.theme-dark-bg .eventSwiper .swiper-button-next img,
section.theme-dark-bg .news-swiper-nav .swiper-button-prev img,
section.theme-dark-bg .news-swiper-nav .swiper-button-next img,
section.theme-dark-bg .facilities-swiper .swiper-button-prev img,
section.theme-dark-bg .facilities-swiper .swiper-button-next img{
    filter:none;
}

section.theme-dark-bg .rankings-section .swiper-button-next[aria-disabled="true"],
section.theme-dark-bg .rankings-section .swiper-button-prev[aria-disabled="true"],
section.theme-dark-bg .industry-carousel-section .swiper-button-next[aria-disabled="true"],
section.theme-dark-bg .industry-carousel-section .swiper-button-prev[aria-disabled="true"],
section.theme-dark-bg .facilities-section .swiper-button-next[aria-disabled="true"],
section.theme-dark-bg .facilities-section .swiper-button-prev[aria-disabled="true"],
section.theme-dark-bg .news-section .swiper-button-next[aria-disabled="true"],
section.theme-dark-bg .news-section .swiper-button-prev[aria-disabled="true"]{ 
  border: 2px solid var(--light-blue);
}

section.theme-dark-bg .swiper-button-next[aria-disabled="true"] img,
section.theme-dark-bg .swiper-button-prev[aria-disabled="true"] img,
section.theme-dark-bg .industry-carousel-section .swiper-button-next[aria-disabled="true"] img,
section.theme-dark-bg .industry-carousel-section .swiper-button-prev[aria-disabled="true"] img,
section.theme-dark-bg .facilities-section .swiper-button-next[aria-disabled="true"] img,
section.theme-dark-bg .facilities-section .swiper-button-prev[aria-disabled="true"] img,
section.theme-dark-bg .news-section .swiper-button-next[aria-disabled="true"] img,
section.theme-dark-bg .news-section .swiper-button-prev[aria-disabled="true"] img{
    filter: brightness(0) invert(1)!important;
}

/**Campus section**/
.campus-video-section .campus-video {
    background-color: var(--white);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 20px;
    padding: 12px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    min-height: clamp(260px, 56vw, 680px);
}

@supports (aspect-ratio: 16 / 9) {
    .campus-video-section .campus-video {
        min-height: 0;
    }
}

.campus-video-section .admission-info-main > .campus-video {
    width: 75%;
    max-width: 75%;
    margin-inline: auto;
    box-sizing: border-box;
}

@media (max-width: 767.98px) {
    .campus-video-section .admission-info-main > .campus-video {
        width: 100%;
        max-width: 100%;
        min-height: 300px;
    }
}

.campus-video-section .campus-video video {
    display: block;
    position: absolute;
    top: 12px;
    left: 12px;
    width: calc(100% - 24px);
    height: calc(100% - 24px);
    border-radius: 20px;
    object-fit: cover;
    object-position: center;
    background: #e8eef5;
}

.campus-video-section .youtube-video iframe {
    width: 100%;
    border-radius: 20px;
}

.campus-video-section .admission-card{
    box-shadow: none!important;
    padding-bottom: 0;
}

/* Campus video: "Green Campus" tag inline with badge line */
.campus-video-section .section-heading p.badge .campus-green-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-left: 10px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(29, 122, 86, 0.10);
    border: 1px solid rgba(29, 122, 86, 0.18);
    color: #1c7a56;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    line-height: 1;
    vertical-align: middle;
}

.campus-video-section .section-heading p.badge .campus-green-tag__icon {
    width: 16px;
    height: 16px;
    display: block;
    filter: brightness(0) saturate(100%) invert(34%) sepia(34%) saturate(780%) hue-rotate(104deg) brightness(0.9);
    opacity: 0.95;
}

@media (max-width: 575.98px) {
    .campus-video-section .section-heading p.badge .campus-green-tag {
        margin-left: 0;
        margin-top: 8px;
        display: inline-flex;
    }
}

/* Admission stat icons — distinct fills (desktop grid + mobile swiper) */
.campus-video-section .admission-card > span.icon {
    border: none;
}
.campus-video-section .admission-stats.admission-desktop .col-lg-4:nth-child(1) .admission-card > span.icon,
.campus-video-section .campusSwiper .swiper-slide:nth-child(1) .admission-card > span.icon {
    background: linear-gradient(145deg, #1a4f8c 0%, #0d2f5c 100%);
}
.campus-video-section .admission-stats.admission-desktop .col-lg-4:nth-child(2) .admission-card > span.icon,
.campus-video-section .campusSwiper .swiper-slide:nth-child(2) .admission-card > span.icon {
    background: linear-gradient(145deg, #b8860b 0%, #8b6914 100%);
}
.campus-video-section .admission-stats.admission-desktop .col-lg-4:nth-child(3) .admission-card > span.icon,
.campus-video-section .campusSwiper .swiper-slide:nth-child(3) .admission-card > span.icon {
    background: linear-gradient(145deg, #1e6b52 0%, #0f4535 100%);
}
.campus-video-section .admission-card > span.icon img {
    filter: brightness(0) invert(1);
}

/* Campus swiper mobile wrapper */
.campus-swiper-wrap {
    overflow: hidden;
    padding: 0 clamp(12px, 3vw, 20px);
}

.campus-swiper-wrap .campusSwiper {
    overflow: visible;
}

.campus-swiper-wrap .swiper-slide {
    height: auto;
}

/* Facilities / tab section: two-column info cards — hide first list row (CMS HTML) */
.featured-section .placement-info-card .mb-0 ul > li:first-child {
    display: none;
}

/* Achievements Section */
.achievements-section{
    border-bottom: 1px solid rgba(51, 109, 154, 0.3);
}
.achievements-section .counter-section {
    border-radius: 20px;
    margin-top: 100px;
    padding: 60px;
}

.achievements-section .counter-section figure,
.achievements-section .counter-section .counter-video,
.achievements-section .counter-section .youtube-video{
    margin-top: -150px;
}

.achievements-section .counter-section figure img,
.achievements-section .counter-section .counter-video video,
.achievements-section .counter-section .youtube-video iframe{
    width: 100%;
    /* height: 600px; */
    border-radius: 20px;
    /* object-fit: cover;
    object-position: center; */
}

.achievements-section .counter-section .count-item-main{
    gap:30px;    
}

.achievements-section .counter-section .count-items{  
    gap:12px;
}

.counter-icon{
    width: 40px;
    height: 40px;
    background-color: var(--light-blue);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.counter-item{
    /* border-right:2px solid rgb(235, 245, 255, 0.4); */
    display: flex;
    align-items: center;
    gap: 8px;
}

.col-lg-3:last-child .counter-item{
    border-right: 0!important;   
}

.counter-item .counter-number {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-dark);
    /* display: inline-block; */
    display: flex!important;
    min-width: 70px;   /* adjust based on your max number */
    text-align: center;
    font-variant-numeric: tabular-nums; /* equal-width digits */   
}

.counter-number::after {
    content: attr(data-suffix);
   font-size: 32px;
    font-weight: 700;
    margin-left: 2px;
}

.counter-item .counter-label {
    font-size: 16px;
    font-weight: 500;
    color: var(--text-light);
}

.odometer.odometer-auto-theme, .odometer.odometer-theme-default{
    font-family: "Montserrat", sans-serif!important;
}

/* News Section */
.news-section .news-card {
    background: var(--light-blue);
    border-radius: 20px;
    overflow: hidden;   
    transition: all 0.3s ease;
}

.newsSwiper .news-innercard{
    padding:18px 18px 12px;
    display:flex;
    flex-direction: column;
    align-items: start;
}

.eventSwiper .swiper-slide{
    height:auto!important;
}

.eventSwiper .news-innercard{
    height: 100%;
    /* padding:12px 24px 12px; */
    padding:18px 18px 0;
}


.eventSwiper .swiper-slide:first-child .news-innercard{
    padding-top:18px!important;
}

.eventSwiper .swiper-slide:last-child .news-innercard{
    padding-bottom:8px!important;
}

.newsSwiper .news-innercard figure{
    width:100%;
}

.newsSwiper .news-innercard figure img{
    border-radius: 16px;
    height: 400px; 
    width: 100%;
    object-fit: cover;
    /* width: 100%;
    height:auto; */
}

.newsSwiper .news-innercard h6{
    font-size: 20px;
    font-weight: 700;
    color:var(--primary-text-color);
    margin-bottom: 10px;
    margin-top: 20px;
}

.news-card-link {
    color: var(--text-dark);
    font-weight: 700;
    text-decoration: none;
    font-size: 12px;
    text-transform: uppercase;
    /* font-size: 0.875rem; */
    letter-spacing: 0.02em;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: color 0.2s;
}

.news-card-link span img{
    filter: brightness(0);
}

.news-card-link span {
    display: inline-flex;
    transition: transform 0.3s ease;
}


.news-card-link:hover span {
    transform: translateX(6px);
}

.news-image {
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.news-card-small {
    background: var(--white);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    margin-bottom: 0;
    height: 100%;
    align-items: center;
}

.news-image-small {
    width: 200px;
    height: auto;
    object-fit: cover;
    flex-shrink: 0;
    border-top-left-radius:20px;
    border-bottom-left-radius:20px;
}

.news-content-small{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
}

.news-content-small h6{
    font-size: 16px;
    color: var(--text-dark);
    font-weight: 500;
    line-height: 1.6;
}

.news-content-small .date-tag{
    background-color: var(--white);
    border-radius: 10px;
}

.news-content-small .date-tag .date-bg{
    background-color: var(--primary-text-color);
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.news-content-small .date-tag .date-left{
    display: flex;
    flex-direction: column;
    line-height: 1.4;
}

.news-content-small .date-tag .date-left .span-month{
    font-size: 22px;
    color:#FFFFFF;
    font-weight: 500;
}

.news-content-small .date-tag .date-left .span-date{
    font-size: 24px;
    color:#FFFFFF;
    font-weight: 700;
}

.news-content-small .date-tag small{
    margin-bottom: 0;
}

.news-content-small .date-tag small .span-icon img{
    width:18px;
    filter: brightness(0);
}

.news-content-small .date-tag small .span-txt{
    font-size:14px;
    color:#1A1A1A;
    font-weight: 500;
}

.news-category {
    background-color: var(--accent-color);
    color: var(--white);
    padding: 0.25rem 0.75rem;
    border-radius: 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.news-swiper-pagination-wrapper .swiper-pagination-bullet {
    background: var(--primary-blue-color);
    opacity: 0.4;
    width: 8px;
    height: 8px;
    margin: 0 3px !important;
    transition: opacity 0.3s, background 0.3s;
}

.news-swiper-pagination-wrapper .swiper-pagination-bullet-active {
    width:35px;
    height:8px;
    border-radius: 16px;
    background: var(--primary-blue-color);
    opacity: 1;
}

.eventSwiper {
    /* position: relative;   
    max-height: 580px;
    overflow: hidden; */
    /* padding-bottom: 60px; */
    height: 560px;
    width: 100%;
}

/* Make the footer stick to bottom */
 .events-swiper-wrap .news-swiper-footer {
    /* position: absolute;
    bottom: 0;
    left: 0;
    right: 0; */
    padding: 16px 24px;
    background: var(--light-blue);
    z-index: 99;
    font-weight: 500;   
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.news-card {
    display: flex;
    flex-direction: column;
}

.news-swiper-wrap,
.events-swiper-wrap {
    flex-grow: 1;
}

/* Virtual Tour Section */
.virtual-tour-section {
    margin-top: 0px;
}

.virtual-tour-wrap{
    position: relative;
    border-radius: 20px;
    padding: 50px 30px 30px;
    color: #fff;
    margin-bottom: -100px;
    z-index: 99;
}

/* Footer */
.footer {
    background-color: var(--light-blue) !important;
    padding-top: 150px;
    /* margin-top:60px; */
}

.footer-logo {
    width: 150px;
    height: auto;    
}

.footer h5 {
    font-weight: 600;
    margin-bottom: 1rem;
    color: var(--primary-blue-color);
}

.footer p {    
    margin-bottom: 1rem;
    color: var(--primary-text-color);    
}

.footer .p_desc{
    font-weight: 600;
    max-width: 200px;
    margin: 0 auto;
}

.footer-links {
    list-style: none;
    padding: 0;
}

.footer-links li {
    margin-bottom: 0.75rem;
}

.footer-links a {
    color: var(--text-dark);
    text-decoration: none;
    transition: color 0.3s ease;
    font-weight: 500;
}

.footer-links a:hover {
    color: var(--primary-text-color);
}

.social-links {
    margin-top: 1rem;
}

.social-link {
    display: inline-block;
    width: 30px;
    height: 30px;  
    text-align: center;
    line-height: 40px;
    border-radius: 50%;   
    transition: all 0.3s ease;
    text-decoration: none;
}

.social-link img{
    filter:invert(76%) sepia(39%) saturate(3748%) hue-rotate(195deg) brightness(62%) contrast(98%);
}

.social-link:hover {
    background-color: var(--secondary-color);
    transform: translateY(-3px);
    color: var(--white);
}

.contact-info p {
    margin-bottom: 1rem;
    color: var(--text-dark);
}

.footer .enquiryBtn span img{
    filter: brightness(0) invert(100%);
}

.footer-link {   
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-link:hover { 
    color: var(--white);
}

.footer .contact-info a ,
.footer .contact-info span{
    text-decoration: none;
    color: var(--text-dark);
    font-weight: 500;
    display: table-cell;
}

.footer .contact-info span img{
    width:18px;
    height: auto;
}

.footer .bottom-footer{
    background-color: var(--primary-text-color);
    color:var(--white);
    height: 60px;
}

.footer .bottom-footer p{
    color:var(--white);
    font-size: 16px;
    text-align: center;
    padding: 16px;
}

.back-to-top{
    padding:0!important;
}

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Loading Animation */
/* .fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
} */

/* Fullscreen base */
.fullscreen-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--primary-text-color);
    z-index: 9999;
    display: none;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 10px 0;
}

.logo-img img{
    width:180px;
    height: auto;
}

.logo-close{
    width: 45px;
    height: 45px;
    border-radius: 8px;
    border: 2px solid #25408D;
    cursor: pointer;
}

.sub-menu li {
    margin-bottom: 10px;
}

.sub-menu li a {
    color: var(--light-blue);
    font-weight: 600;
    text-decoration: none;
    font-size: 18px;
    transition: all 0.3s;
}

.sub-menu li a:hover {
    color: #ff9900;
}

/* Show active submenu */
.submenus .sub-menu {
    display: none;
}
.submenus .sub-menu.active {
    display: block;
}

/* Image section */
.menu-right img {
    max-width: 90%;
    height: auto;
    object-fit: contain;
}

/* Close button */
.close-btn {
    background: transparent;
    border: none;
    font-size: 22px;
    font-weight: 500;
    color: #25408D;
}

 /* Hamburger Menu Button */
        .hamburger-btn {
            background: none;
            border: none;
            color: white;
            font-size: 1.5rem;
            cursor: pointer;
            padding: 0.5rem;
            transition: all 0.3s ease;
        }

        .hamburger-btn:hover {
            color: var(--princeton-orange);
        }

        .hamburger-btn .hamburger-icon {
            display: block;
            width: 25px;
            height: 3px;
            background-color: currentColor;
            margin: 5px 0;
            transition: 0.3s;
            position: relative;
        }

        .hamburger-btn .hamburger-icon::before,
        .hamburger-btn .hamburger-icon::after {
            content: '';
            position: absolute;
            width: 25px;
            height: 3px;
            background-color: currentColor;
            transition: 0.3s;
        }

        .hamburger-btn .hamburger-icon::before {
            top: -8px;
        }

        .hamburger-btn .hamburger-icon::after {
            top: 8px;
        }

        /* Fullscreen Menu Overlay */
        .menu-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
            background-color: var(--primary-text-color);
            z-index: 9999;
            opacity: 0;
            visibility: hidden;
            transition: all 0.4s ease;
        }

        .menu-overlay.active {
            opacity: 1;
            visibility: visible;
        }

        .menu-container {
            height: 100vh;
            display: flex;
            position: relative;
        }

        /* Close Button */
        .close-btn {          
            color: var(--primary-text-color);
            font-size: 22px;
            cursor: pointer;
            z-index: 10001;
            transition: all 0.3s ease;
        }

        .close-btn:hover {          
            transform: rotate(90deg);
        }

        /* Main Navigation Column */
        .main-nav {
            flex: 1;
            padding: 2rem;           
            overflow-y: auto;
        }

        .main-nav-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .main-nav-item {
            margin-bottom: 1rem;
        }

        .main-nav-item:last-child .main-nav-link,
        .submenu-item:last-child .submenu-link,
        .submenu-item:last-child,
        .main-nav-item:last-child {
            border-bottom: 0!important;
        }

        .main-nav-link {
            color: var(--light-blue);
            text-decoration: none;
            font-size: 18px;
            font-weight: 600;
            display: flex;
            justify-content: space-between;
            padding: 8px 0;
            /* border-bottom: 1px solid transparent; */
            transition: all 0.3s ease;
            position: relative;
        }

        button.main-nav-link{
            background-color: transparent;           
            box-shadow: none;
            width: 100%; 
            border: 0;          
        }

        .main-nav-link span img{
            filter:brightness(0) invert(100%);
        }

        .main-nav-link:hover span img{
            filter: none;
        }

        .main-nav-link:hover,
        .main-nav-link.active {
            color: var(--accent-color);
            /* border-bottom-color: var(--accent-color); */
        }
    
        .main-nav-link:hover::after,
        .main-nav-link.active::after {
            opacity: 1;
            right: -1rem;
        }

        .menu-image-container {
            display: flex;
            justify-content: center;
            align-items: center;
            transition: all 0.5s ease;
            /* padding: 3rem 3rem 3rem 3rem; */
        }

        /* Submenu Column */
        .submenu-container {
            flex: 1;
            padding: 2rem 3rem 3rem 3rem;
            overflow-y: auto;
        }

        .submenu {
            display: none;
            animation: fadeInUp 0.4s ease;         
        }

        .submenu.active {
             display: block;
            opacity: 1;         
        }


            /* Arrow style */
            .arrow-icon {
            margin-left: 8px;
            font-size: 16px;
            color: #ffb400;
            }

            /* Only show arrow on items with submenu */
            .main-nav-link.has-submenu .arrow-icon {
            display: inline-block;
            }

        .submenu-title {
            color: var(--accent-color);
            font-size: 1.5rem;
            font-weight: 600;
            margin-bottom: 2rem;
            padding-bottom: 1rem;
            border-bottom: 2px solid var(--accent-color);
        }

        .submenu-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .submenu-item {
            margin-bottom: 0.5rem;
        }

        .submenu-link {
            color: var(--light-blue);
            text-decoration: none;
            font-size: 18px;
            font-weight: 600;
            display: block;
            padding: 0.75rem 0;
            transition: all 0.3s ease;
            /* border-left: 3px solid transparent;
            padding-left: 1rem; */
        }

        .submenu-link:hover {
            color: var(--accent-color);
            /* border-left-color: var(--accent-color);
            padding-left: 1.5rem; */
        }

        /* Animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
       

.menu-container .menu-footer {
    position:absolute;
    bottom: 0;
    left: 0;
    width:100%;
    background-color: var(--primary-text-color); /* Match the menu bg */
    color: white;
    border-top: 1px solid rgba(235, 245, 255, 0.6);
    font-size: 16px;
    padding: 15px 48px;
    z-index: 99;
}

.menu-container .footer-link {
    color: white;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}

.menu-container .footer-link.vitual-tour-link{
    color: var(--accent-color);
    font-weight: 600;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.menu-container .footer-link:hover {
    color: var(--accent-color);   
}

.menu-container .footer-icons a img {
    filter: brightness(0) invert(1); /* White icons */
    transition: filter 0.3s ease;
}

.menu-container .footer-icons a:hover img {
    filter: brightness(0.8) invert(1);
}
.menu-footer .topbar-social img{
    width:22px;
    height: auto;
}

/**Media Query**/
@media (min-width:1600px){ 
 .container{max-width: 1420px;}
}

@media (min-width: 1280px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1240px;
    }
}

@media (min-width: 1199px) and (max-width: 1279px) {
    .achievements-section .counter-section .count-item-main {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr);
        gap: 16px;
    }
    .achievements-section .counter-section .counter-item{text-align: left!important;}
    .achievements-section .counter-section .counter-item .counter-number{
        min-width: 90px;
    }
}


@media (min-width:1200px){  
    .slider-content .hero-content:not(.hero-content--split) .hero-title,
    .slider-content .hero-content:not(.hero-content--split) .hero-subtitle {  
        max-width: 850px;
        margin: 0 auto 5px;
    }

    .slider-content .hero-content:not(.hero-content--split) .hero-btn-group .btn{
        width: 200px;
    }

    .trust-wrapper{
        display: flex;
        justify-content: center;
    }

    .trust-wrapper .trust-item{
        padding:0 20px!important;
    }

    .main-nav {
        flex: none;  
        width: 25%;
    }
    .submenu-container{
        flex:none;
        width:75%;
        z-index: 99;
    }
    .menu-image-desk{
        position: absolute;
        right:48px;
        top:0;
        height:100%;
    } 
    .menu-height-desk{
        height: calc(100% - 140px);
        position: relative;
        overflow-y: auto;
    }      

    .main-nav-item,
    .submenu-item{
        margin-bottom: 0;
    }

    .main-nav-link,
    .submenu-link{
        padding: 18px 0;
        border-bottom: 1px solid rgba(235, 245, 255, 0.2);
    }

     button.main-nav-link{
        padding: 18px 0; 
        border-bottom: 1px solid rgba(235, 245, 255, 0.2)!important;
        border:0;       
     }

    .submenu-columns {
        display: flex;
        flex-wrap: wrap;
        gap: 36px;
    }

    .submenu-list {
    list-style: none;       
    margin: 0;    
    /* width: 280px; */
    width:25%;
    }

    .menu-image-container figure{
        width: auto;
        height: 100%;
        padding: 3rem 0;
    }

    .menu-image-container figure img{
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
        opacity: 0.8;
        max-width: 90%;
    }

    .container-fluid{
        padding: 0 48px;
    }
   
    .heroSwiper .swiper-slide figure img{
        width: auto;
        /* height: 450px; */
        height: 524px;
    }


    .course-finder-card .row *{
        margin:0!important;
    }

    .highlighted-section-iconlist figure img{
        height:500px!important;
    }

     .tab--grid-section-wrap .tab-pane .swiper-wrapper{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }

    .rankingsSwiper .swiper-button-next:hover,
    .rankingsSwiper .swiper-button-prev:hover,
    .industrySwiper .swiper-button-next:hover,
    .industrySwiper .swiper-button-prev:hover,
    .eventSwiper .swiper-button-next:hover,
    .eventSwiper .swiper-button-prev:hover,
    .news-swiper-nav .swiper-button-next:hover,
    .news-swiper-nav .swiper-button-prev:hover,
    .facilities-swiper .swiper-button-next:hover,
    .facilities-swiper .swiper-button-prev:hover{
        background: transparent;
        border: 2px solid var(--primary-blue-color);
        color: var(--primary-blue-color);   
    }

    .rankingsSwiper .swiper-button-next:hover img,
    .rankingsSwiper .swiper-button-prev:hover img,
    .industrySwiper .swiper-button-next:hover img,
    .industrySwiper .swiper-button-prev:hover img,
    .eventSwiper .swiper-button-next:hover img,
    .eventSwiper .swiper-button-prev:hover img,
    .news-swiper-nav .swiper-button-next:hover img,
    .news-swiper-nav .swiper-button-prev:hover img,
    .facilities-swiper .swiper-button-next:hover img,
    .facilities-swiper .swiper-button-prev:hover img{
        filter: unset;
    }

}

@media (min-width:768px){
    .newsSwiper .news-innercard figure.poster {
        /* background-color: var(--primary-text-color);
        border-radius: 12px; */
        position: relative;
        overflow: hidden;
        border-radius: 16px;
        background-size: cover;
        background-position: center;
    }

    .newsSwiper .news-innercard figure.poster::before {
        content: "";
        position: absolute;
        inset: 0;
        background-image: inherit;
        background-size: cover;
        background-position: center;
        filter: blur(10px);
        transform: scale(1.2);
        z-index: 0;
    }

    .newsSwiper .news-innercard figure img{
        width: 100% !important;
        object-fit: contain;
         position: relative;
        z-index: 1;
        display: block;
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation : landscape){
    .main-nav {
        flex: none;  
        width: 30%;
    }
    .submenu-container{
        flex:none;
        width:70%;
        z-index: 99;
    }
    .menu-image-desk{
        position: absolute;
        right:48px;
        top:0;
        height:100%;
    } 
    .menu-height-desk{
        height: calc(100% - 140px);
        position: relative;
        overflow-y: auto;
    }      

    .main-nav-item,
    .submenu-item{
        margin-bottom: 0;
    }

    .main-nav-link,
    .submenu-link{
        padding: 18px 0;
        border-bottom: 1px solid rgba(235, 245, 255, 0.2);
    }

     button.main-nav-link{
        padding: 18px 0; 
        border-bottom: 1px solid rgba(235, 245, 255, 0.2)!important;
        border:0;       
     }

    .submenu-columns {
        display: flex;
        flex-wrap: wrap;
        gap: 36px;
    }

    .submenu-list {
    list-style: none;       
    margin: 0;    
    /* width: 280px; */
    width:30%;
    }

    .menu-image-container figure{
        width: auto;
        height: 100%;
        padding: 3rem 0;
    }

    .menu-image-container figure img{
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
        opacity: 0.8;
        max-width: 90%;
    }

    .navbar { height: 68px;}
    .navbar .search-btn,.navbar .menu-btn{min-height:68px;}
    .heroSwiper .swiper-slide figure img{height:260px;}
    .navbar-brand.logo-div img {width: 180px;}
    .main-navbar-mobile{display: none!important;}
    .slider-content .hero-content:not(.hero-content--split) .hero-title,
    .slider-content .hero-content:not(.hero-content--split) .hero-subtitle {  
        max-width: 500px;
        margin: 0 auto;
    }

    .slider-content .hero-content:not(.hero-content--split) .hero-btn-group .btn{
        width: 200px;
    }
    .hero-title,.secondary-banner-title{font-size: 36px!important;}
    .word-carousel:not(.word-carousel--split),
    .word-carousel:not(.word-carousel--split) h2{font-size: 46px!important;}
    .section-heading p,
    .highlighted-section .overview-content p.description, 
    .facilities-section p.description,
    .highlighted-section .overview-content p.badge{font-size: 16px!important;}
    .highlighted-section .overview-content h6,
    .faculties-section .faculties-desc{font-size: 18px!important;}
    
    .section-heading h2,
    .virtual-tour-section h2,
    .highlighted-section .overview-content h2,.faculties-title{font-size: 42px!important;}
    

    .highlighted-section-top figure{padding:0!important;margin-top:-300px!important;}

    .topbar .container-fluid,
    footer .container-fluid{padding-left:24px;padding-right: 24px;}
     .navbar-brand.logo-div{
        /* left: 24px;   
        padding: 15px 0;*/
        margin-left: 10px;
        padding:0;
    }
    .menu-image{width:100%;}
    .campus-info-img{height: 300px;}
    .eventSwiper{height: 500px;}
    .newsSwiper .news-innercard{padding: 18px 18px 9px;}
    .eventSwiper .news-innercard{padding: 18px 18px 0;}
    .eventSwiper .swiper-slide:first-child .news-innercard{padding-top: 18px!important;}
    .eventSwiper .swiper-slide:last-child .news-innercard{padding-bottom: 18px!important;}
    .news-image-small{ width:180px;}
    .news-content-small h6{font-size: 14px;}   
    /* .news-content-small{padding:14px!important;} */
    .date-tag .small{font-size: 13px;}
    .date-tag .date-left .span-month,
    .date-tag .date-left .span-date{font-size: 16px!important;} 

    .program-tabs{padding:0;}
    .program-tabs .nav-tabs{
        white-space: nowrap;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 5px !important;
        padding: 0 20px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .program-tabs .nav-tabs::-webkit-scrollbar {
        display: none;
    }
    .program-tabs .nav-tabs .nav-item {
        flex: 0 0 auto;
    }

    .highlighted-section.highlighted-section-iconlist figure img{
        height: 500px;
    }

     .tab--grid-section-wrap .tab-pane .swiper-wrapper{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .secondary-banner-section{height:75vh!important}
    .flex-row-reverse-tb { flex-direction: column-reverse;}

    .awards-section{padding: 50px 0 !important;}
    .awards-vertical-swiper .swiper-slide{margin-bottom: 80px!important;align-items: flex-start !important;}
    .awards-section .awards-nav{
        position: absolute !important;
        top: auto !important;
        right: 50% !important;
        left: 50% !important;
        bottom: -20px !important;      
    }
    .awards-vertical-swiper{height: 100%!important;margin-left: -15px!important; margin-right: -15px!important;}
    .awards-section .swiper-button-prev { right: 8px !important;}
    .awards-nav .swiper-button-prev img {transform: rotate(180deg) !important;}
    .awards-section .awards-nav .swiper-button-next {top: 50%;left: 8px !important;}
    .awards-nav .swiper-button-next img {transform: none !important;}        
    .awards-vertical-swiper .swiper-slide:nth-child(even) img,
    .awards-vertical-swiper .swiper-slide:nth-child(odd) img{border-radius: 12px!important;}    
    .awards-vertical-swiper .swiper-slide:nth-child(odd) .swiper-content{text-align: left!important;}
    .awards-vertical-swiper .swiper-slide:nth-child(odd) .swiper-content::before{left:5px!important;}
    .awards-vertical-swiper .swiper-slide:nth-child(even) .swiper-content::before{left:5px!important;}
    .awards-vertical-swiper .swiper-slide:nth-child(odd) .swiper-content p{padding-left: 20px!important;}
    .careerSwiper{padding:0 24px!important}
    .testimonial-swiper-new .testimonial-video-thumb video{border-radius: 12px!important;}

    .industry-carousel-section .grid-card .grid-card-head figure img{width:100%!important}
    .achievements-section .counter-section .count-item-main{
        display: grid!important;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;       
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation : portrait){
    .navbar { height: 54px;}
    .navbar .search-btn,.navbar .menu-btn{min-height:54px;}
    .topbar .container-fluid,
    footer .container-fluid{padding-left:24px;padding-right: 24px;}
    .heroSwiper{padding:40px 0 60px;}   
    .heroSwiper .swiper-slide figure img{width: auto; height: 350px;}
    /* .course-finder-card{margin-top: -130px;}    */
    .achievements-section .counter-section .count-item-main{
        display: grid!important;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;       
    }
    .achievements-section .counter-section figure img{height:350px;}
    .achievements-section .counter-section{margin-top: 120px;
        padding: 40px;}
    .achievements-section .counter-section .counter-item{padding:8px;}
    .footer .p_desc{margin:0;}    
    .campus-info-img{height:250px!important;}
    .flex-row-reverse-tb { flex-direction: column-reverse;}
    .rankings-swiper-wrap{margin-left:-20px;margin-right: -20px;}

    .slider-content .hero-content:not(.hero-content--split) .hero-title,
    .slider-content .hero-content:not(.hero-content--split) .hero-subtitle {  
        max-width: 500px;
        margin: 0 auto;
    }

    .slider-content .hero-content:not(.hero-content--split) .hero-btn-group .btn{
        width: 200px;
    }

    .hero-title, .secondary-banner-title{
        font-size: 32px !important;
    }

    .word-carousel:not(.word-carousel--split), .word-carousel:not(.word-carousel--split) h2{
        font-size: 40px !important;
    }

    .eventSwiper{
        height: 460px;
    }

    .newsSwiper .news-innercard figure{
        background-color: var(--primary-text-color);
        border-radius: 12px;
     }

    .newsSwiper .news-innercard figure img{
        height:340px!important;
        width:100%!important;
        object-fit: contain!important;
        border-radius: 12px!important;
    }

      /* .recruiter-tags{
        display: grid!important;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px!important;
    } */

    /* .recruiter-tags span img {
        width: 115px;
        height: auto;
        margin: 0 auto;
    } */
}

@media (max-width: 768px) {

    .slider-content{
    padding: 0 30px!important;
    }

    .slider-content .hero-content{
        justify-content: center !important;
        /* padding-top: 50px; */
        padding-bottom: 0!important;
    }

    .slider-content .hero-content .hero-subtitle{
        text-align: center!important;        
    }

    .hero-section--split .slider-content {
        padding: 0 !important;
    }

    .hero-section--split .slider-content .hero-content {
        justify-content: flex-start !important;
    }

    .hero-section--split .slider-content .hero-content .hero-subtitle {
        text-align: left !important;
    }

    .sticky-icon {
        right: 16px;
        bottom: 20px;
        top: auto;
        width: auto;
        align-items: flex-end;
    }

    /* Floating main button */
    .sticky-toggle {
        display: flex!important;
        width: 46px;
        height: 46px;
        border-radius: 10px 0 0 10px;
        background: #336d9a;
        border: none;
        align-items: center;
        justify-content: center; 
        cursor: pointer;
        z-index: 100;
    }

    .sticky-toggle img {
        width: 24px;
        transition: transform 0.3s ease;
        filter: brightness(0) invert(1);
    }

    /* Rotate when open */
    .sticky-icon.open .sticky-toggle img {
        transform: rotate(45deg);
    }

    /* Hide buttons initially */
    .sticky-icon a.sticky-btn2,
    .sticky-icon .enquiryBtn2.sticky-btn2 {
        opacity: 0;
        transform: translateY(10px);
        pointer-events: none;
        transition: all 0.3s ease;
        margin-bottom: 8px;
    }

    /* Show buttons on open */
    .sticky-icon.open a.sticky-btn2,
    .sticky-icon.open .enquiryBtn2.sticky-btn2 {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }

    /* Mobile button size */
    .sticky-icon a,
    .sticky-icon .enquiryBtn2 {
        width: 200px;
    }

    .content-wrap{margin-top: 94px!important;}
    .content-section.mt-0{margin-top: 0!important;}
    .banner-img_desktop{display:none}
    .hero-title,.secondary-banner-title,
    .word-carousel:not(.word-carousel--split),
    .word-carousel:not(.word-carousel--split) h2{font-size: 28px;}
    .word-carousel:not(.word-carousel--split){margin-bottom:1rem}

    .section-heading h2,
    .virtual-tour-section h2,
    .highlighted-section .overview-content h2,.faculties-title,
    .course-finder-card h2,
    .placement-section h4{font-size: 26px!important;}

    .placement-card h3,
    .location-section .distance-item h4{font-size: 22px!important;}

    .section-heading p,
    .highlighted-section .overview-content p.description, 
    .highlighted-section .overview-content .description p,
    .facilities-section p.description,
    .facilities-section .description p,
    .highlighted-section .overview-content p.badge,
    .twocard-section .twocard-desc,
    .grid-card-desc,.ranking-card-link,
    .highlighted-section-iconlist .icon-list-desc,
    .campus-info-content p,
    .career-section .career--card-box .career-desc,
    .accordion-body,
    .accordion-body ul li a{font-size: 14px!important;}

    .highlighted-section .overview-content h6,
    .faculties-section .faculties-desc,
    .highlighted-section li,
    .accordion-button{font-size: 16px!important;}

    .accordion-button::after{width:22px!important;height:22px!important}
    .accordion-button{padding:18px 16px!important}

    .section-heading p.badge{
        padding: 0 !important;
        height: auto !important;
    }
    .highlighted-section .overview-content p.badge{
        padding: 10px 22px!important;
        height: 36px!important;
    }
 
    .section-heading p .p_icon img{
        width:20px;
        height:auto
    }

    section {padding-top: 50px;}

    .extra-page section{margin-top: 50px!important;}
    .extra-page section.mt-0,
    section.mt-0{margin-top: 0px!important;}
    
    /* .footer{margin-top:50px;} */

    .btn{
        --bs-btn-font-size: 0.7rem !important;
        font-size: 0.7rem !important;
        padding: 12px 16px!important;
    }
    .btn-arrow img{
        width:22px;
        height:auto;
    }

    .tab--link-section .btn{
        /* padding:12px 24px!important */
        padding:14px!important;
    }

    .twocard-section, .career-section{
        padding: 50px 0!important;
        /* margin-top: 50px!important; */
    }

    /* .gallery-section.theme-dark-bg{
        margin-top: 50px!important;
    } */

    .tab--grid-section, 
    .tab--link-section, .grid-section,
    .faculties-section,
    .twocard-grid-section{
        /* margin-top: 50px!important; */
        padding-bottom: 50px!important;
    }

    .CTA-section{
        padding-bottom: 0px!important;
    }

    .rankings-section,
    /* .industry-carousel-section, */
    .awards-section,
    .highlighted-section-full{
        padding: 50px 0!important;
    }

    .campus-info-section{
        padding: 50px 0 35px!important;
    }

    .testimonials-section,
    .highlighted-section.highlighted-section-iconlist.theme-dark-bg,
    .content-section.theme-dark-bg,
    .tab--content-section{
        padding-bottom: 50px!important;
    }

    .content-carousel-section{
        padding: 50px 0 35px!important;
        margin-top: 0px!important;
    }

    .extra-page section.theme-dark-bg, 
    .extra-page section.theme-light-bg,
    section.theme-dark-bg, 
    section.theme-light-bg {
    margin-top: 50px;
    padding: 50px 0 !important;
}

.twocard-section .twocard-title,
    .program-tabs .po-table-title,
    .facilities-section .facilities-slide-title,
    .grid-card-title,.campus-info-title,
    .career-section .career--card-box .career-title,
    .newsSwiper .news-innercard h6{
        font-size: 20px!important;
    }

    /* .rankings-swiper-wrap{margin-left:-20px; margin-right:-20px;} */
    .rankings-section .container, 
    .industry-carousel-section .container{padding-left: 0;padding-right: 0;}
    .rankings-swiper-wrap .rankingsSwiper,
    .industry-swiper-wrap .industrySwiper{padding-left: 20px; padding-right: 20px;}   
    /* .rankingsSwiper .swiper-wrapper{padding:0 12px;} */
    .rankingsSwiper{padding-top: 45px;}
    .ranking-card-logo{margin-top: -65px;}
    .ranking-card-logo img{width:150px;}
    
    .news-swiper-nav{margin-top:20px}
    .newsSwiper .news-innercard{padding: 20px 20px 12px;}
    .news-swiper-footer{padding: 0 10px 20px 20px;}
    .newsSwiper .news-innercard figure img{height:auto;width:100%;}
    
   
    .marquee__img{min-height: 100px;width: max(12rem, 20vw);}
    .course-finder-card{padding: 20px 10px;} 
    .course-finder-card .form-select,
    .course-finder-card h2{margin-bottom: 15px!important;}      
    .achievements-section .counter-section .counter-item .counter-number,
    .achievements-section .counter-section .counter-item .counter-number::after{font-size: 24px;line-height: 1.2;} 
    .achievements-section .counter-section .counter-item .counter-label{font-size: 16px;text-align: left;}

    .highlighted-section.apply-section .course-finder-card { margin-top: -200px!important; margin-bottom: 40px;}

    .secondary-banner-text{padding:40px 24px!important;}
    .highlighted-section .highlighted-card{padding:20px!important}
    .highlighted-section .overview-content {padding: 1.5rem 0 0!important;}
    .highlighted-section-full .overview-content,
    .highlighted-section .overview-content-m{padding: 0 0 1.5rem!important;}


    .virtual-tour-section .virtual-tour-wrap{padding: 50px 20px 20px;}

    .newsSwiper .news-innercard figure img,
    .highlighted-section .highlighted-card,
    .program-tabs .po-table-card,
    .po-table,
    .ranking-card,
    .ranking-card-logo,
    .campus-info-card,
    .campusInfoSwiper .swiper-slide .campus-info-card::after,
    .facilities-slide-card,
    .career-section .career--card-box,
    .highlighted-section figure img,
    .news-section .news-card,
     .virtual-tour-wrap,
     .news-card-small{
        border-radius: 12px!important;
    }

    .facilities-img{border-radius: 12px 12px 0 0!important;}
    .campus-info-img{border-top-left-radius: 10px;border-top-right-radius: 10px;}

    .footer h5{font-size: 16px;}
    .footer-links a{font-size: 14px;}
    .footer .bottom-footer p, .footer p{font-size: 14px;}
    .footer-links li{margin-bottom: 0.5rem;}   

    .partner-logo-modal .modal-dialog-scrollable .modal-content .modal-body{
        padding:24px!important;
    }
    .partner-logo-modal .modal-dialog-scrollable .modal-content .modal-body .btn{
        top:20px;
        right:20px;
        padding: 12px 18px 12px 12px !important;
    }

    .partner-modal-logo img{
        width:150px;
        height: auto;
    }

    .mb-mob-3{
        margin-bottom: 15px;
    }

    /**Extra Section**/   
    
}

/* Mobile Menu Responsive */
@media (max-width: 768px) {
    .menu-container {
        flex-direction: column;
         overflow-y: auto;
        /* height: calc(100vh - 180px)!important; */
        height:100%!important;
    }

    .menu-container .menu-footer,
    .submenu{
        position: relative!important;
    }
    .menu-image{
        width:100%;
        height:auto;
    }
    .submenu.active{
        padding:0;
    }

    .main-nav {
        border-right: none;       
        padding: 1rem 0.75rem;
        flex: none;  
        -webkit-animation: fade-in-left 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-left 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;     
    }

    .main-nav-item{
        border-bottom: 1px solid rgba(235, 245, 255, 0.2);
        margin-bottom: 0;
    }

    .main-nav-link,
    .submenu-link {
        font-size: 14px;
        padding: 12px 0;
    }

    .submenu-container {
        /* padding: 1rem; */
        position: relative; 
        display: none;
        height: 100%;
        overflow-y: initial!important;
        padding:0!important;
    }

    .submenu-list{
        padding:0;
    }

    .submenu {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;   
    z-index: 2;
    padding: 0 15px;
    -webkit-animation: fade-in-right 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	animation: fade-in-right 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;

}

.submenu.active {
    display: block;
    left: 0;
    padding: 1rem 0.75rem;    
    pointer-events: auto;
    z-index: 2;    
}


.submenu-header {
    padding: 12px 0;
    font-weight: bold;
     border-bottom: 1px solid rgba(235, 245, 255, 0.2);
}

.submenu-item{
     border-bottom: 1px solid rgba(235, 245, 255, 0.2);
     margin-bottom: 0;
}

.submenu-back {
    background: none;
    color: var(--accent-color);
    border: none;
    font-size: 14px;
    font-weight: 600;
    padding: 0;    
}

    .close-btn {
        top: 1rem;
        right: 1rem;
        font-size: 22px !important;
        padding: 0 !important;
    }

    .menu-container .menu-footer{
        padding:15px 8px;
        z-index: 99;
    }

    .menu-container .menu-footer .topbar-social{
        margin-left: 0;
        margin-right: 10px;
    }

    .main-nav-link.has-submenu .arrow-icon::before{
        content: "";
        border-left: 1px solid rgba(235, 245, 255, 0.2);
        margin: 3px 11px -2px -12px;    
        height: 15px;
        display: inline-block;
        margin-right: 20px;
        display: none;
    }

    .menu-height-desk{
        height:auto!important;
    }

    .submenu-back .arrow-icon{
        margin-left: 0;
        margin-right: 8px;
    }

    .submenu-back .arrow-icon img{
        transform: rotate(180deg);
    }

    .navbar-brand.logo-div{
        /* left: 24px;   
        padding: 15px 0;*/
        margin-left: 15px;
        padding: 0;
    }
    .navbar-brand.logo-div img{
        /* width: 120px; */
         width: 140px;
        height: auto;
    }
    .navbar .search-btn, .navbar .menu-btn{
        padding: 18px 16px;
    }

    .navbar .foundation-logo{
        width: 160px;
        height: auto;
    }

    .topbar{
        font-size: 12px;      
        height: 35px;
    }    
}

@media (min-width:768px){
 .banner-img_mobile{display:none;}
 .admission-mobile{
        display:none!important;
    }
    .admission-desktop{
        display:flex!important;
    }
}

@media (max-width: 767px) {      
    .navbar { height: 54px;}
    .navbar .search-btn,.navbar .menu-btn{min-height:54px;}
    .hero-title,.secondary-banner-title{font-size: 28px!important;}
    .word-carousel:not(.word-carousel--split),
    .word-carousel:not(.word-carousel--split) h2{font-size: 36px!important;}

    .slider-content .hero-content:not(.hero-content--split) .hero-buttons{
        flex-direction: column;
        gap: 12px;
    }
    .slider-content .hero-content:not(.hero-content--split) .hero-btn-group .btn{
        width: 100%;
    }

    .slider-content .hero-content:not(.hero-content--split){
        padding: 0 20px;
    }

    .slider-content .hero-content:not(.hero-content--split) .hero-title{
        max-width: 320px;
        margin: 0 auto;
    }

    .container{padding-left: 20px;padding-right: 20px;}
    .mob-pad-0{padding-left: 0!important;padding-right: 0!important;}
    .flex-column-reverse-sm { flex-direction: column-reverse;}
    
    .navbar-brand.logo-div {/*left: 16px!important;/*padding: 10px 0;*/margin-left: 2px !important;}
    .navbar-brand.logo-div img {width: 120px!important}
    .navbar .foundation-logo{width: 156px;}

    .heroSwiper{padding:15px 24px!important;}
    .hero-buttons {text-align: center;}
    .hero-buttons:not(.hero-buttons--split) .btn {display: flex;width: 100%;margin-bottom: 0rem;justify-content: center;}
    /* .hero-section{padding-bottom: 80px!important;} */
    .heroSwiper .swiper-slide figure img{width: auto;height: 218px;}

    /* Course finder: mobile spacing + full-width controls */
    .course-finder-section{
        padding: 28px 0 34px;
    }
    .course-finder-section .course-finder-card{
        padding: 18px 14px !important;
        border-radius: 16px !important;
    }
    .course-finder-section .course-finder-form__row{
        /* override Bootstrap gy-4 on small screens */
        --bs-gutter-y: 0.85rem;
    }
    .course-finder-section .course-finder-form__row > [class*="col-"]{
        display: flex;
        justify-content: flex-start;
    }
    .course-finder-section .course-finder-form__row .form-select,
    .course-finder-section .course-finder-form__row .btn{
        max-width: none;
        width: 100% !important;
    }
    .course-finder-section .course-finder-card h2.find-programme{
        align-items: center;
        text-align: center;
        margin-bottom: 0 !important;
    }
    .course-finder-card .btn{
        padding: 12px 18px !important;
    }

    .achievements-section .counter-section{margin-top: 100px;padding: 25px;}
    .achievements-section .counter-section figure, 
    .achievements-section .counter-section .counter-video, 
    .achievements-section .counter-section .youtube-video{margin-top: -120px;}
    .achievements-section .counter-section figure img{height:200px;}
    .achievements-section .counter-section .counter-item{border-right:0px solid rgb(235, 245, 255, 0.4)!important;/*border-bottom:2px solid var(--light-blue);*/padding: 0px 0;}
    .achievements-section .counter-section .col-lg-3:last-child .counter-item{ border-bottom:0!important;} 
    .achievements-section .counter-section .col-lg-3:nth-child(even) .counter-item{border-right:0!important;}

    .text-mob-center{text-align: center;}
    .div-mob-center{display: flex;flex-direction: column;}

    .eventSwiper{ max-height: 320px;}
    .eventSwiper .news-innercard{padding: 16px 16px 0;}
    .eventSwiper .swiper-slide:first-child .news-innercard{padding-top: 16px!important;}
    .eventSwiper .swiper-slide:last-child .news-innercard{padding-bottom: 16px!important;}      

    .news-content-small h6{
        font-size: 12px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .news-image-small{width:120px;}
    /* .news-content-small{padding:12px!important;} */
    .date-tag .small{font-size: 11px;}
    .date-tag .date-left .span-month,
    .date-tag .date-left .span-date{
        font-size: 12px!important;}

    .swiper-button-next, 
    .swiper-button-prev{
        width:46px!important;
        height:46px!important;
    }

    .swiper-button-next img, 
    .swiper-button-prev img{
        width:22px!important;
        height: auto;
    }

    .news-card-link{font-size: 0.8125rem;}
    .news-card-link span img{width:22px;height:auto} 

    .footer .bottom-footer{ height: auto;}
    footer .contact-info{display: flex;flex-direction: column; align-items: start;}
    /* .footer .contact-info span{display: unset;}   */
    .footer .container-fluid{padding:0 20px;}

    /**Extra page**/   
    .twocard-section-wrap .card-flex-mob{display: flex; align-items: center;}
    .twocard-section-wrap .card-flex-mob .twocard-title{margin-bottom: 24px;}
    .twocard-section-wrap .mb-3{margin-bottom:20px!important}
    .twocard-section-wrap .col-lg-5{margin-bottom:20px!important}
    .twocard-section-wrap .col-lg-12{margin-bottom:20px!important}
    .twocard-section-wrap .col-lg-6:last-child{margin-bottom:0!important;}
    .twocard-section-wrap iframe{height:260px}

    .po-table .col-lg-3 .link-head, .po-table .col-lg-3 .link-body{text-align: center;}    
    .tab--link-section .po-table .link-body-row a.text-link{justify-content: center;}
    .po-table .link-body span img{width:20px!important}
    .highlighted-section-iconlist .highlighted-icon-list li:not(:last-child) .icon-list-icon::after{
        /* height: calc(100% - 76px + 0px)!important;        
        top: 40%!important;
        transform: translateY(40%)!important; */
        left: 22px!important;
    }
    .highlighted-section.highlighted-section-iconlist .overview-content{
        padding-bottom: 0!important;
    }
       
    
    .rankings-swiper-footer,.industry-swiper-footer{padding:0 16px!important;}
    .rankings-swiper-progress,.industry-swiper-progress{margin-right:0!important;}
    .ranking-card{padding:20px!important;min-height:220px;}
    

    .faculties-section .faculty-connector{left:40%!important;}    
    .faculty-view-btn{width: 100%!important;}
    .faculty-thumb img{width:200px;height: 200px;}
    .faculties-section .faculty-details-card{flex-direction: column;justify-content: center;text-align: center; gap: 20px;}
    .facilities-section .facilities-swiper-nav {
        top: 0 !important;
        position: relative;
        bottom: unset;
        padding-bottom: 20px;
        padding-top: 20px;       
        justify-content: center;
        left:0;
    }
   
    .campus-info-img, .facilities-img{height:200px!important;}
    .campus-info-content{padding: 20px 8px!important;}

    /* .awards-section .awards-nav {position: absolute !important;top: 72% !important; right: 75px!important; transform: translateY(-72%)!important;} */
       .awards-vertical-swiper .swiper-slide .swiper-content{padding: 10px 5px 80px !important;font-size: 14px!important;}
        .awards-vertical-swiper .swiper-wrapper{padding: 0!important;}
       .awards-vertical-swiper .swiper-slide{padding:0 20px!important}
    
    /* .testimonials-section .testimonial-flex-card,.testimonial-video-thumb{height:250px!important}*/

    .career-section .career--card-box .career-logo{padding: 15px 30px!important;}
    .career-section .career--card-box .career-logo img{width:100px!important}

    .virtual-tour-section .Virtual-tour-buttons{
        display: flex;
       flex-wrap: wrap;
        gap: 10px;
        justify-content: center;
    }

    .news-swiper-footer {
        padding: 0 20px 20px 20px!important;
    }  

    .tab--grid-section .grid-card-body{
        justify-content: flex-start;
    }

    .tab--grid-section .grid-card-body .grid-card-title{
     overflow: hidden;
      text-overflow: ellipsis;
      white-space: initial;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
    }

    .tab--content-section .news-img{
        width: 100%!important;
        height: auto!important;
    }

    .tab--content-section .programs-tabs-c {
        display: block!important;
    }

    .btn-lg {
        padding: 0.75rem 0.75rem !important;
    }

    .tab--content-section .program-column-list{
        padding: 0 16px!important;
    }

    .blog-details .blog-date{
        display: flex;
        flex-wrap: wrap;
        gap:8px;
    }

    .blog-divide-none{
        display: none!important;
    }

    .blog-details .description figure,
    .blog-details .description figure img{
        width:100%!important;
    }

    .sticky-icon{
        top: 20%!important;
        /* bottom: 10%!important; */
    }

    .achievements-section .counter-section .count-item-main{
        display: grid!important;
        grid-template-columns: repeat(2, 1fr)!important;
        gap: 20px;       
    }

    .achievements-section .counter-section .count-items{  
        gap: 6px !important;
        flex-direction: column;
        align-items: center !important;
    }

     .achievements-section .counter-section .count-items .counter-item{
        flex-direction: column;
        justify-content: center;
        gap: 2px!important;
     }

     .achievements-section .counter-section .counter-item .counter-label{
        text-align: center;
     }

     .grid-section.why-choose-section .why-choose-grid .grid-card-body .grid-card-title{
        font-size: 18px !important;
        line-height: 1.4!important;
    }

    .recruiter-tags{
        display: flex!important;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px!important;
    }

    .recruiter-tags span{
        padding: 8px!important;
    }

    .recruiter-tags span img {
        width: 68px!important;
        height: auto;
    }

    .admission-card{
        padding: 16px!important;
    }

    .campus-video-section .admission-card{
        padding:4px!important;
    }

    .featured-section .grid-card-body {
        gap: 0!important;
    }

    .admission-info-main{
        padding-left: 20px!important;
        padding-right: 20px!important;
    }

    .location-section .placement-card{
        padding: 16px!important;
        gap: 2px!important;
    }

    .location-section .placement-stats .col-lg-3:nth-child(even),
    .placement-section .placement-stats .col-lg-3:nth-child(even){
        padding-left: 8px!important;
    }

    .location-section .placement-stats .col-lg-3:nth-child(odd),
    .placement-section .placement-stats .col-lg-3:nth-child(odd){
        padding-right: 8px!important;
    }

    .CTA-section .why-choose-grid{
        gap: 20px!important;
    }

    /* .trust-list{
        justify-content: flex-start!important;
        padding:30px 16px 0 16px !important;
        gap: 16px!important;
    } */

    .trust-list {
        grid-template-columns: 1fr!important;
        row-gap: 16px;
    }

    .trust-item:not(:last-child)::after {
        display: none;
    }

    .trust-wrapper{
        padding:20px!important;
    }

    .trust-item{
        padding: 0!important;
    }

    .achievements-section .counter-section .counter-item .counter-number, 
    .achievements-section .counter-section .counter-item .counter-number::after{
        justify-content: center;
    }

     .newsSwiper .news-innercard figure.poster {      
        background-image:none!important;            
    }

    .admissions-section .admission-desktop-card{
        padding:10px 4px 20px!important;
        text-align: left!important;
    }

    .admissions-section .grid-section-wrap{
        padding-left:20px;
        padding-right:20px;
    }

    .admission-mobile{
        display:block!important;
    }
    .admission-desktop{
        display:none!important;
    }

}


@media (max-width: 360px) {
     .section-heading h2,
    .virtual-tour-section h2,
    .highlighted-section .overview-content h2,.faculties-title,
    .course-finder-card h2,
    .placement-section h4{font-size: 24px!important;}

    .placement-card h3,
    .location-section .distance-item h4{font-size: 20px!important;}

    .grid-card-title{
        line-height: 1.4!important;
    }
    .container {
        padding-left: 16px;
        padding-right: 16px;
    }
    .word-carousel:not(.word-carousel--split){font-size: 36px!important;}
    .sticky-icon {top:25% !important;}
    .heroSwiper .swiper-slide figure img {width: auto;height: 195px;}
    .news-swiper-footer{flex-direction: column-reverse;gap: 14px;}
    .navbar-brand.logo-div img {width: 100px!important}
    .navbar .foundation-logo{width: 130px;}
    .news-swiper-footer{flex-direction: column-reverse;gap: 14px;}
    .news-content-small .date-tag img{width:14px;height:auto}
    .news-content-small .date-tag .small {font-size: 10px;}
    .news-content-small .date-tag .p-2{padding:6px!important}
    .eventSwiper{ max-height: 320px;}   
    .recruiter-tags span{
        padding: 5px!important;
    }

    .recruiter-tags span img {
        width: 62px!important;
        height: auto;
    }

    .newsSwiper .news-innercard figure.poster {      
        background-image:none!important;            
    }
}

@media (max-width: 320px) {
 .hero-section{padding:30px 0 80px!important}
 .heroSwiper .swiper-slide figure img {width: auto;height: 170px;}
 .hero-title:not(.hero-title--split), .secondary-banner-title, .word-carousel:not(.word-carousel--split) {font-size: 24px !important;}
 .hero-subtitle, .tab--content-section .programs-tabs-c .nav-link,
 .tab--content-section .program-list li, .tab--table-section .tab-content ul li{font-size: 14px !important;}
 .btn, .book-now .sticky-btn{
        --bs-btn-font-size: 0.7rem !important;
        font-size: 0.7rem !important;
    }
 .news-card-link{font-size: 0.75rem !important;}
 .course-finder-card{padding: 30px 14px!important;}
 .course-finder-card h2,
 .section-heading h2, .virtual-tour-section h2, .highlighted-section .overview-content h2, .faculties-title
 {font-size: 22px!important;}
 .course-finder-card .form-select,
 .ranking-card-title,.achievements-section .counter-section .counter-item .counter-label,
 .highlighted-section-iconlist .icon-list-desc p{font-size: 14px!important;}
 .section-heading p.badge,
 .highlighted-section .overview-content p.badge{height: auto!important;white-space: normal;font-size: 13px !important;}
 .campus-info-img, .facilities-img {height: 160px !important;}
 .campus-info-icon{width:26px!important;height: 26px!important;}
 .twocard-section .twocard-title, .program-tabs .po-table-title, 
 .facilities-section .facilities-slide-title, .grid-card-title, 
 .campus-info-title, .career-section .career--card-box .career-title, 
 .newsSwiper .news-innercard h6{font-size: 18px!important;}
 .campus-info-content{padding: 20px 2px !important;}
 .campus-info-content p, .footer-links a,
 .footer .bottom-footer p, .footer p{font-size: 13px !important;}
 .ranking-card{padding: 14px!important;}
 .ranking-card-logo{margin-top:-55px!important} 
 .ranking-card-title strong{font-size: 16px!important;}
 .achievements-section .counter-section .counter-item .counter-number,
 .achievements-section .counter-section .counter-item .counter-number::after{font-size: 30px!important;}
 .news-image-small{width: 90px!important;}
 .tab--grid-section-wrap .programSwiper1, 
 .tab--grid-section-wrap .programSwiper2, .tab--grid-section-wrap .programSwiper3,
 /* .container{padding-left: 16px!important; padding-right: 16px!important;} */
 .newsSwiper .news-innercard{padding: 20px 16px 12px!important;}
 .social-link{width: 25px;height: 25px;}
 .footer .bottom-footer p{padding: 16px 4px!important;}
 .tab--content-section .program-group-title,
 .highlighted-section-iconlist .icon-list-title{font-size: 18px!important;}
 .highlighted-section .highlighted-card,
 .highlighted-section-top .highlighted-card,
 .twocard-section .twocard-box .twocard-content, .grid-card-body{padding: 16px !important;}
 .secondary-banner-text {padding: 40px 20px !important;}
 .faculty-thumb img {height: 160px !important;}
 
}


.fade-in-right {
	-webkit-animation: fade-in-right 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-right 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}


/** animation fade-in-right---*/
@-webkit-keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

.fade-out-right {
	-webkit-animation: fade-out-right 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: fade-out-right 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

/** animation fade-out-right--*/
@-webkit-keyframes fade-out-right {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
}
@keyframes fade-out-right {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
    opacity: 0;
  }
}

.fade-in-left {
	-webkit-animation: fade-in-left 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-left 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}


/** animation fade-in-left---*/
@-webkit-keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}


/* .fade-in {
	-webkit-animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
} */

.fade-in-smooth{
    -webkit-animation: fade-in 1.2s ease-in both;
	animation: fade-in 1.2s ease-in both;
}


/**animation fade-in*/
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade-in-bottom {
	-webkit-animation: fade-in-bottom 0.6s linear both;
	        animation: fade-in-bottom 0.6s linear both;
}


/**animation fade-in-bottom---*/
@-webkit-keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

.two-line-ellipsis {
  display: -webkit-box;
  -webkit-line-clamp: 2;     /* number of lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Events column: title not under .newsSwiper h6 rules */
.eventSwiper .news-innercard h6.two-line-ellipsis,
.news-content-small h6.two-line-ellipsis {
    font-weight: 700 !important;
    color: var(--primary-text-color);
}



.sticky-icon {
   z-index: 9;
    position: fixed;
    top: 50%;
    right: 0;
    display: flex;
    flex-direction: column;
    width: 180px; 
    align-items: flex-end;
    pointer-events: none;
}

.sticky-icon a,
.sticky-icon button {
    pointer-events: auto; /* 👈 enable click only on buttons */
}

/* Sticky Button */
.sticky-btn2{
    /* background: var(--accent-color); */
    border-radius: 10px 0 0 10px;  
    font-size: 0.7rem !important;
    border: 0;
    font-weight: 700 !important;
    font-family: "Montserrat", sans-serif !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #fff;
}

a.sticky-btn2:nth-of-type(3n+1){
    /* background: var(--primary-blue-color); */
    background: var(--accent-color);
    border:1px solid #fff;
}

a.sticky-btn2:nth-of-type(3n+2){
    background: var(--secondary-blue-color);
    border:1px solid #fff;
}

a.sticky-btn2:nth-of-type(3n){
    background: var(--accent-color);
    border:1px solid #fff;
    color:var(--text-dark);
}

.sticky-icon a,
.sticky-icon .enquiryBtn2 {
    width: 210px;
    margin: 4px 0;
    padding: 6px 12px;
    border-radius: 10px 0 0 10px;
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    transition: width 0.35s ease, padding 0.35s ease;
}


.sticky-icon a:hover,
.sticky-icon .enquiryBtn2:hover{
 width: 220px;
}

/* ICON */
.sticky-icon a i,
.sticky-icon .enquiryBtn2 i {
    background: #fff;
    height: 36px;
    width: 36px;
    min-width: 36px;   
    text-align: center;
    border-radius: 50%;
    transition: transform 0.5s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sticky-icon a i img,
.sticky-icon .enquiryBtn2 i img{
    width:22px;
    height:auto;
}

.sticky-icon .sticky-btn2:nth-of-type(3n+1) i img{
    /* filter: invert(0%) sepia(61%) saturate(2690%) hue-rotate(197deg) brightness(45%) contrast(103%); */
    filter: brightness(0) saturate(100%) invert(10%) sepia(26%) saturate(6480%) hue-rotate(198deg) brightness(94%) contrast(102%);
}

.sticky-icon .sticky-btn2:nth-of-type(3n+2) i img{
    /* filter: invert(0%) sepia(61%) saturate(2690%) hue-rotate(197deg) brightness(45%) contrast(103%); */
    filter: brightness(0) saturate(100%) invert(33%) sepia(98%) saturate(326%) hue-rotate(164deg) brightness(95%) contrast(91%);
}

.sticky-icon .sticky-btn2:nth-of-type(3n) i img{
filter: brightness(0) saturate(100%) invert(75%) sepia(17%) saturate(3247%) hue-rotate(355deg) brightness(101%) contrast(100%);
}

/* TEXT */
.sticky-icon a span,
.sticky-icon .enquiryBtn2 span {
    margin-left: 12px;
    opacity: 1;
    transition: opacity 0.3s ease;
}

/* SCROLL STATE → ICON ONLY */
.sticky-icon.icon-only a,
.sticky-icon.icon-only .enquiryBtn2 {
    width: 46px; /* icon only */
    padding: 6px;
}

.sticky-icon.icon-only .npfWidget-4bec09c83430c30429bb0c564edb5179.npfWidgetButton.enquiryBtn2{
    padding: 6px!important;
}

.sticky-icon.icon-only a span,
.sticky-icon.icon-only .enquiryBtn2 span {
    opacity: 0;
}

/* HOVER → ONLY THIS BUTTON EXPANDS */
.sticky-icon.icon-only a:hover,
.sticky-icon.icon-only .enquiryBtn2:hover {
    width: 210px;
    padding: 6px 12px;
}

.sticky-icon.icon-only a:hover span,
.sticky-icon.icon-only .enquiryBtn2:hover span {
    opacity: 1;
}

/* ICON ROTATE */
.sticky-icon a:hover i,
.sticky-icon .enquiryBtn2:hover i{    
    transform: rotate(360deg);
}

.sticky-toggle {
    display: none;
}


/* CTA box */
.banner-cta {
  position: fixed;
  bottom: 20px;
  right: 0;  
  /* backdrop-filter: blur(8px); 
  -webkit-backdrop-filter: blur(8px); */
  padding: 18px;
  min-width: 360px;
  z-index: 990;
  /* clip-path: polygon(0 0,100% 0,100% calc(100% - 52px),calc(100% - 52px)100%,0 100%);
  background-color: color-mix(in oklab, var(--white) 50%, transparent); */
  border-radius: 10px 0 0 10px;
  transition: opacity 0.3s ease, transform 0.3s ease;
  background-color: rgba(255, 255, 255, 1);
  box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 4px 0px;
}


.banner-cta.hide {
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
}

/* Heading */
.banner-cta h2 {
  margin: 0 0 24px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-dark);
}

.banner-cta p{
    max-width: 400px;
    font-weight: 500;
}


/* Close button */
.pop-close-btn {
  position: absolute;
  top: 14px;
  right: 14px;
  background: none;
  border: 0;
  font-size: 18px;
  cursor: pointer;
  color:var(--text-dark);
  font-weight: 600;
}

.note-text{
    color: var(--white);
    font-size: 13px;
    opacity: 1;
    font-weight: 500;
}


/* ═══════════════════════════════════════════════
   VEMerge+ – Industry Integrated Learning Section
   ═══════════════════════════════════════════════ */

/* -- Section shell -- */
.vemerge-section {
    padding: 50px 0;
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #001530 0%, #002147 45%, #1a3470 100%);
}
.vemerge-orb { position: absolute; border-radius: 50%; pointer-events: none; filter: blur(80px); opacity: 0.55; }
.vemerge-orb--1 { width: 420px; height: 420px; background: radial-gradient(circle, rgba(255,182,6,0.22) 0%, transparent 70%); top: -100px; right: -80px; }
.vemerge-orb--2 { width: 320px; height: 320px; background: radial-gradient(circle, rgba(51,109,154,0.35) 0%, transparent 70%); bottom: -60px; left: -60px; }

/* -- section-heading overrides for dark background -- */
.vemerge-section .section-heading h2 { color: var(--white); }
.vemerge-section .section-heading p.description { color: rgba(255,255,255,0.70); font-size: 1rem; font-weight: 400; }

/* -- Sup -- */
.vemerge-section sup, .vemerge-hero-title sup { font-size: 0.72em; font-weight: inherit; vertical-align: super; position: static; line-height: 1; color: inherit; }
.vemerge-plus-sup { font-size: 0.72em; font-weight: inherit; vertical-align: super; position: static; line-height: 1; color: inherit; }

/* -- Zone shared header -- */
.vemerge-zone-header { margin-bottom: 40px; }
.vemerge-zone-label { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.10em; color: rgba(255,182,6,0.80); margin-bottom: 6px; }
.vemerge-zone-title { font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; color: var(--white); margin: 0 0 8px; }
.vemerge-zone-sub { color: rgba(255,255,255,0.50); font-size: 0.9rem; margin: 0; }

/* -- Zone separators -- */
.vemerge-steps-wrap, .vemerge-stories-wrap { margin-top: 60px; padding-top: 52px; border-top: 1px solid rgba(255,255,255,0.08); }
.vemerge-compare-wrap { margin-top: 60px; padding-top: 52px; border-top: 1px solid rgba(255,255,255,0.08); }

/* -- ZONE 1: Badge -- */
.vemerge-badge { background: rgba(255,182,6,0.15) !important; color: var(--accent-color) !important; border: 1px solid rgba(255,182,6,0.35); }
.vemerge-badge .p_icon img { filter: brightness(0) saturate(100%) invert(78%) sepia(61%) saturate(700%) hue-rotate(1deg); }

/* -- ZONE 1: Hero title -- */
.vemerge-hero-title { font-size: clamp(1.8rem, 3.8vw, 2.75rem); font-weight: 800; color: var(--white); line-height: 1.2; margin: 16px 0 16px; letter-spacing: -0.01em; }
.vemerge-hero-sub { font-size: clamp(0.95rem, 1.6vw, 1.1rem); color: rgba(255,255,255,0.70); font-weight: 400; margin: 0 auto; max-width: 580px; line-height: 1.7; letter-spacing: 0.01em; }

/* -- ZONE 1: Screenshot-style hero shell -- */
.vemerge-hero-shell {
    position: relative;
    padding: 10px 12px 0;
    max-width: 1200px;
    margin: 0 auto;
}
.vemerge-lockup {
    margin: 0;
    font-size: clamp(2.1rem, 5vw, 4rem);
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -0.02em;
    color: var(--white);
}
.vemerge-lockup .vemerge-plus-sup { font-size: 0.32em; color: #2eb6ff; margin-left: 3px; }
.vemerge-hero-copy {
    margin: 14px 0 0;
    max-width: 520px;
    color: rgba(255,255,255,0.60);
    font-size: 0.9rem;
    line-height: 1.65;
    font-weight: 400;
}

.vemerge-alt-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 26px;
    align-items: start;
    justify-items: center;
    text-align: center;
}
.vemerge-alt-eyebrow {
    margin: 10px 0 10px;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.20em;
    color: var(--accent-color);
}
/* VEmerge hero “In collaboration with” — match theme yellow */
.vemerge-section .vemerge-strip-eyebrow.vemerge-strip-eyebrow--hero {
    color: var(--accent-color) !important;
}
.vemerge-partner-tags {
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}
.vemerge-strip-eyebrow--hero {
    margin-top: 16px;
    margin-bottom: 2px;
    border-right: 0;
    padding-right: 0;
    text-align: center;
}
.vemerge-partner-tags li {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
    border-radius: 10px;
    color: rgba(225,239,255,0.88);
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1;
    padding: 9px 12px;
}
.vemerge-partner-tags .vemerge-partner-logo {
    border: 0;
    background: #ffffff;
    border-radius: 10px;
    padding: 8px 14px;
}
.vemerge-partner-tags .vemerge-partner-logo img {
    height: 28px;
    width: auto;
    max-width: 120px;
    object-fit: contain;
    display: block;
    filter: none;
}
.vemerge-alt-left .vemerge-cta-group {
    margin-top: 20px;
}
.vemerge-alt-left .btn.btn-secondary-yellow {
    min-width: 280px;
    justify-content: center;
}
.vemerge-alt-left--center {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.vemerge-alt-left--center .vemerge-hero-copy {
    max-width: 56ch;
    margin-left: auto;
    margin-right: auto;
}

.vemerge-alt-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.vemerge-alt-card {
    min-height: 98px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.11);
    background: linear-gradient(160deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.04) 100%);
    box-shadow: 0 10px 20px rgba(0,0,0,0.18);
    padding: 12px 14px;
}
.vemerge-alt-card-ic {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(0,84,166,0.55);
    margin-bottom: 7px;
}
.vemerge-alt-card-ic--teal { background: rgba(16,120,100,0.55); }
.vemerge-alt-card-ic--purple { background: rgba(100,60,180,0.55); }
.vemerge-alt-card-ic--green { background: rgba(24,133,94,0.55); }
.vemerge-alt-card-ic img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    display: block;
    filter: brightness(0) invert(1);
}
.vemerge-alt-card h3 {
    margin: 0 0 4px;
    color: var(--white);
    font-size: 1rem;
    line-height: 1.3;
    font-weight: 700;
}
.vemerge-alt-card p {
    margin: 0;
    color: rgba(255,255,255,0.60);
    font-size: 0.9rem;
    line-height: 1.65;
}

.vemerge-kpi-row {
    margin-top: 18px;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}
.vemerge-kpi-row--under-left {
    max-width: 1160px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 48px;
}
.vemerge-kpi-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 6px;
    min-height: 98px;
    padding: 16px 18px;
    border: 1px solid rgba(110, 206, 255, 0.28);
    border-radius: 14px;
    background: linear-gradient(165deg, rgba(13, 53, 103, 0.72) 0%, rgba(8, 36, 75, 0.82) 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.10), 0 10px 24px rgba(0,0,0,0.22);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.vemerge-kpi-item::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 50%;
    width: 42px;
    height: 3px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: linear-gradient(90deg, #2ecbff 0%, #69e0ff 100%);
    opacity: 0.8;
}
.vemerge-kpi-item:hover {
    transform: translateY(-2px);
    border-color: rgba(130, 220, 255, 0.44);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 16px 28px rgba(0,0,0,0.26);
}
.vemerge-kpi-number {
    color: rgba(255, 255, 255, 0.96);
    text-shadow: none;
    font-size: clamp(1.65rem, 2.4vw, 2.15rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.01em;
    white-space: nowrap;
}
.vemerge-kpi-label {
    color: rgba(228, 242, 255, 0.82);
    text-transform: uppercase;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.35;
    white-space: nowrap;
}

/* Placement info cards — dark cards without cyan stroke / glow */
.placement-section .placement-info-card {
    background: linear-gradient(165deg, rgba(13, 53, 103, 0.72) 0%, rgba(8, 36, 75, 0.82) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 14px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 10px 24px rgba(0, 0, 0, 0.22) !important;
    padding-top: 28px !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}
.placement-section .placement-info-card::before {
    display: none;
}
.placement-section .placement-info-card:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 16px 28px rgba(0, 0, 0, 0.26) !important;
}
.placement-section .placement-info-card h3 {
    color: rgba(255, 255, 255, 0.98) !important;
    text-shadow: none;
    font-weight: 800 !important;
    letter-spacing: -0.01em;
}
.placement-section .placement-info-card .info-desc p,
.placement-section .placement-info-card .info-desc {
    color: rgba(228, 242, 255, 0.82) !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}
.placement-section .placement-info-card .info-desc p {
    margin-bottom: 0 !important;
}
.placement-section .placement-info-card small,
.placement-section .placement-info-card small p {
    color: rgba(255, 255, 255, 0.72) !important;
}
.placement-section .placement-info-card .icon {
    border: none !important;
    box-shadow: none !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

.placement-partners-highlight-row {
    margin-top: 10px;
    margin-bottom: 30px;
}

.placement-partners-highlight {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 20px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.26);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

.placement-partners-highlight .count {
    color: #ffb606;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
}

.placement-partners-highlight .label {
    color: rgba(255, 255, 255, 0.95);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

/* Home VEmerge+ → Programmes → Departments → Placements: layout2 uses .grid-section { margin-top: 50px; padding-bottom: 50px } */
#vemerge-plus + section.grid-section {
    margin-top: 8px !important;
}
section.why-choose-section.grid-section {
    padding-bottom: 32px !important;
}
section.department-section.grid-section {
    padding-bottom: 32px !important;
}
section.why-choose-section + section.department-section {
    margin-top: 12px !important;
}
section.department-section + section.placement-section,
section.why-choose-section + section.placement-section {
    margin-top: 0 !important;
}
#vemerge-plus + section.placement-section {
    margin-top: 0 !important;
}
/* layout2 .placement-section { padding: 50px 0 } */
section#placement.placement-section {
    padding: 56px 0 64px !important;
}

@media (max-width: 1199.98px) {
    .vemerge-section { padding: 76px 0 44px; }
    .vemerge-hero-shell { padding-left: 0; padding-right: 0; }
    .vemerge-alt-layout { grid-template-columns: 1fr; gap: 20px; }
    .vemerge-hero-copy { max-width: 100%; }
    .vemerge-kpi-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
    .vemerge-section { padding: 56px 0 32px; }
    section#placement.placement-section { padding: 44px 0 50px !important; }
    .vemerge-lockup { font-size: 2.3rem; }
    .vemerge-hero-copy { font-size: 0.96rem; }
    .vemerge-alt-cards { grid-template-columns: 1fr; }
    .vemerge-alt-left .btn.btn-secondary-yellow { min-width: 100%; }
    /* KPI row: 2-column grid on mobile */
    .vemerge-kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 12px; gap: 10px; }
    .vemerge-kpi-row.vemerge-kpi-row--under-left { margin-top: 36px; }
    .vemerge-kpi-item { min-height: 90px; }
    .vemerge-kpi-label { font-size: 0.62rem; letter-spacing: 0.09em; }
}

/* -- ZONE 2: Mid row -- */
.vemerge-mid-row { margin-top: 52px; padding-top: 44px; border-top: 1px solid rgba(255,255,255,0.10); }
.vemerge-desc { color: rgba(255,255,255,0.80); font-size: 1.05rem; line-height: 1.8; margin: 0; }
.vemerge-cta-group { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 28px; }
.vemerge-link-btn { display: inline-flex; align-items: center; gap: 6px; color: rgba(255,255,255,0.80); font-weight: 600; font-size: 0.95rem; text-decoration: none; transition: color 0.2s, gap 0.2s; }
.vemerge-link-btn:hover { color: var(--white); gap: 10px; }
.vemerge-arrow { display: inline-flex; align-items: center; }
.vemerge-arrow img { width: 16px; filter: brightness(0) invert(1); }

/* -- ZONE 2: Stats -- */
.vemerge-stats-inline { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; justify-content: flex-end; gap: 0; flex-wrap: wrap; }
.vemerge-stat-item { display: flex; flex-direction: column; align-items: center; padding: 0 28px; }
.vemerge-stat-number { font-size: clamp(2rem, 3.5vw, 2.8rem); font-weight: 900; color: var(--accent-color); line-height: 1; }
.vemerge-stat-number sup { font-size: 0.5em; vertical-align: super; color: var(--accent-color); top: -0.3em; }
.vemerge-stat-label { font-size: 0.75rem; color: rgba(255,255,255,0.55); font-weight: 500; text-align: center; margin-top: 4px; letter-spacing: 0.04em; text-transform: uppercase; }
.vemerge-stat-divider { width: 1px; height: 48px; background: rgba(255,255,255,0.15); flex-shrink: 0; }

/* -- ZONE 3b: Feature Highlights -- */
.vemerge-highlights-row { margin-top: 52px; }
.vemerge-highlight-item { display: flex; flex-direction: column; gap: 0; }
.vemerge-highlight-icon { width: 52px; height: 52px; border-radius: 14px; background: rgba(0,84,166,0.55); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.vemerge-highlight-icon--teal { background: rgba(16,120,100,0.55); }
.vemerge-highlight-icon--purple { background: rgba(100,60,180,0.55); }
.vemerge-highlight-icon--green { background: rgba(24,133,94,0.55); }
.vemerge-highlight-icon img { width: 26px; height: 26px; filter: brightness(0) invert(1); }
.vemerge-highlight-icon { margin-bottom: 12px; }
.vemerge-highlight-title { font-size: 1rem; font-weight: 700; color: var(--white); margin: 0 0 4px; line-height: 1.3; }
.vemerge-highlight-desc { font-size: 0.9rem; color: rgba(255,255,255,0.60); margin: 0; line-height: 1.65; }

.vemerge-cta-row {
    margin-top: 34px !important;
}

.vemerge-cta-row .col-auto {
    width: 100%;
    display: flex;
    justify-content: center;
}

.vemerge-cta-row .vemerge-cta-group {
    margin-top: 0;
    padding: 12px;
    border-radius: 18px;
    background: linear-gradient(165deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.05) 100%);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.24);
}

.vemerge-cta-btn {
    min-height: 48px;
    padding: 12px 28px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(255, 182, 6, 0.35);
    transform: translateY(0);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.vemerge-cta-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(255, 182, 6, 0.42);
}

@media (max-width: 767.98px) {
    .vemerge-cta-row .vemerge-cta-group {
        width: 100%;
        max-width: 100%;
        padding: 8px;
    }

    .vemerge-cta-btn {
        width: 100%;
        justify-content: center;
        padding-left: 18px;
        padding-right: 18px;
        line-height: 1.45;
    }
}

/* -- ZONE 3: Partner strip -- */
.vemerge-partner-strip-wrap { margin-top: 72px; padding: 24px 32px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 0; }
.vemerge-strip-eyebrow { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.10em; color: rgba(255,255,255,0.45); white-space: nowrap; text-align: right; padding-right: 24px; border-right: 1px solid rgba(255,255,255,0.15); }
.vemerge-alt-left .vemerge-strip-eyebrow--hero {
    border-right: 0;
    border-bottom: 0;
    padding-right: 0;
    padding-bottom: 0;
    margin-bottom: 2px;
    text-align: center;
}
.vemerge-partner-strip { list-style: none; margin: 0; padding: 0 0 0 24px; display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px 12px; }
.vemerge-partner-logo { display: flex; align-items: center; justify-content: center; background: #ffffff; border-radius: 10px; padding: 10px 16px; transition: box-shadow 0.2s, transform 0.2s; }
.vemerge-partner-logo:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.20); transform: translateY(-2px); }
.vemerge-partner-logo img { height: 50px; width: auto; max-width: 140px; object-fit: contain; filter: none; display: block; }

/* -- ZONE 4: Step cards -- */
/* Sequential wave: 9s total cycle, each card active for 3s then waits */
@keyframes vmerge-seq-spin {
    0%   { transform: rotate(0deg);   opacity: 1; }
    30%  { transform: rotate(360deg); opacity: 1; }
    34%  { transform: rotate(360deg); opacity: 0; }
    100% { transform: rotate(360deg); opacity: 0; }
}
@keyframes vmerge-seq-pulse {
    0%   { transform: scale(1);    opacity: 0.65; }
    22%  { transform: scale(1.7);  opacity: 0; }
    100% { transform: scale(1.7);  opacity: 0; }
}
@keyframes vmerge-seq-glow {
    0%   { box-shadow: 0 0 10px rgba(255,182,6,0.15), inset 0 0 8px rgba(255,182,6,0.06); border-color: rgba(255,182,6,0.30); }
    12%  { box-shadow: 0 0 32px rgba(255,182,6,0.55), inset 0 0 24px rgba(255,182,6,0.25); border-color: rgba(255,182,6,0.75); }
    30%  { box-shadow: 0 0 10px rgba(255,182,6,0.15), inset 0 0 8px rgba(255,182,6,0.06); border-color: rgba(255,182,6,0.30); }
    100% { box-shadow: 0 0 10px rgba(255,182,6,0.15), inset 0 0 8px rgba(255,182,6,0.06); border-color: rgba(255,182,6,0.30); }
}
.vemerge-step-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.09); border-top: 3px solid rgba(255,255,255,0.10); border-radius: 20px; padding: 32px 24px 28px; height: 100%; position: relative; transition: border-top-color 0.25s, background 0.25s, transform 0.25s; }
.vemerge-step-card:hover { border-top-color: var(--accent-color); background: rgba(255,255,255,0.07); transform: translateY(-5px); }
.vemerge-step-bubble { width: 72px; height: 72px; border-radius: 50%; background: rgba(255,182,6,0.10); border: 1.5px solid rgba(255,182,6,0.30); display: flex; flex-direction: column; align-items: center; justify-content: center; margin-bottom: 20px; position: relative; animation: vmerge-seq-glow 9s ease-in-out infinite; }
/* Conic-gradient spinning ring — active only during this card's 3s window */
.vemerge-step-bubble::before { content: ''; position: absolute; inset: -5px; border-radius: 50%; background: conic-gradient(from 0deg, var(--accent-color) 0deg, rgba(255,182,6,0.50) 80deg, rgba(255,182,6,0.10) 150deg, transparent 190deg); mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px)); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px)); animation: vmerge-seq-spin 9s linear infinite; }
/* Expanding pulse ring — active only during this card's 3s window */
.vemerge-step-bubble::after { content: ''; position: absolute; inset: 0; border-radius: 50%; border: 2px solid rgba(255,182,6,0.60); animation: vmerge-seq-pulse 9s ease-out infinite; }
/* Card 2 starts 3s later in the cycle */
.col-lg-4:nth-child(2) .vemerge-step-bubble        { animation-delay: 3s; }
.col-lg-4:nth-child(2) .vemerge-step-bubble::before { animation-delay: 3s; }
.col-lg-4:nth-child(2) .vemerge-step-bubble::after  { animation-delay: 3s; }
/* Card 3 starts 6s later in the cycle */
.col-lg-4:nth-child(3) .vemerge-step-bubble        { animation-delay: 6s; }
.col-lg-4:nth-child(3) .vemerge-step-bubble::before { animation-delay: 6s; }
.col-lg-4:nth-child(3) .vemerge-step-bubble::after  { animation-delay: 6s; }
/* Hover: lock at peak glow, speed up ring */
.vemerge-step-card:hover .vemerge-step-bubble { background: rgba(255,182,6,0.20); border-color: rgba(255,182,6,0.70) !important; box-shadow: 0 0 36px rgba(255,182,6,0.50), inset 0 0 22px rgba(255,182,6,0.22) !important; animation-play-state: paused; }
.vemerge-step-card:hover .vemerge-step-bubble::before { animation-play-state: running; animation-duration: 1.5s; }
.vemerge-step-card:hover .vemerge-step-bubble::after  { animation-play-state: paused; }
.vemerge-step-label-sm { font-size: 0.6rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.10em; color: rgba(255,182,6,0.70); line-height: 1; }
.vemerge-step-num { font-size: 1.6rem; font-weight: 900; color: var(--accent-color); line-height: 1; }
.vemerge-step-title { font-size: 1.05rem; font-weight: 700; color: var(--white); margin-bottom: 10px; }
.vemerge-step-desc { color: rgba(255,255,255,0.60); font-size: 0.85rem; line-height: 1.7; margin-bottom: 16px; }
.vemerge-step-bullets { list-style: none; margin: 0; padding: 0; }
.vemerge-step-bullets li { color: rgba(255,255,255,0.55); font-size: 0.82rem; padding: 3px 0 3px 16px; position: relative; }
.vemerge-step-bullets li::before { content: '›'; position: absolute; left: 0; color: var(--accent-color); font-weight: 700; }

/* -- ZONE 4b: What You Will Get -- */
.vemerge-wyg-wrap { margin-top: 60px; padding-top: 52px; border-top: 1px solid rgba(255,255,255,0.08); display: grid; grid-template-columns: 30% 1fr; gap: 48px; align-items: start; }
.vemerge-wyg-left { position: sticky; top: 100px; }
.vemerge-wyg-left .vemerge-zone-title { margin-bottom: 12px; }
.vemerge-wyg-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 32px; }
.vemerge-wyg-item { display: flex; flex-direction: row; align-items: flex-start; gap: 16px; padding: 20px; }
.vemerge-wyg-item .vemerge-benefit-body { flex: 1; }
.vemerge-wyg-item .vemerge-benefit-title { margin-bottom: 4px; }
@media (max-width: 991.98px) {
    .vemerge-wyg-wrap { grid-template-columns: 1fr; gap: 28px; }
    .vemerge-wyg-left { position: static; }
}
@media (max-width: 575.98px) {
    .vemerge-wyg-grid { grid-template-columns: 1fr; }
}

/* -- ZONE 5: Benefit cards -- */
.vemerge-benefits-row { margin-top: 48px; }
.vemerge-benefit-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); border-top: 3px solid rgba(255,255,255,0.12); border-radius: 16px; padding: 28px 20px 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; height: 100%; position: relative; transition: background 0.25s, border-color 0.25s, border-top-color 0.25s, transform 0.25s; }
.vemerge-benefit-card:hover { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.18); border-top-color: var(--accent-color); transform: translateY(-5px); }
.vemerge-card-num { position: absolute; top: 16px; right: 18px; font-size: 0.68rem; font-weight: 800; color: rgba(255,255,255,0.18); letter-spacing: 0.06em; }
.vemerge-benefit-icon { width: 46px; height: 46px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.vemerge-benefit-icon img { width: 22px; height: 22px; object-fit: contain; filter: brightness(0) invert(1); }
.vemerge-icon--blue   { background: rgba(51,109,154,0.40); }
.vemerge-icon--yellow { background: rgba(255,182,6,0.28); }
.vemerge-icon--green  { background: rgba(34,197,94,0.22); }
.vemerge-icon--purple { background: rgba(139,92,246,0.28); }
.vemerge-icon--orange { background: rgba(249,115,22,0.28); }
.vemerge-benefit-body { flex: 1; }
.vemerge-benefit-title { color: var(--white); font-size: 0.92rem; font-weight: 700; margin-bottom: 6px; line-height: 1.35; }
.vemerge-benefit-desc { color: rgba(255,255,255,0.58); font-size: 0.82rem; line-height: 1.6; margin: 0; }

/* -- ZONE 5b: Timeline -- */
.vemerge-tl-wrap { margin-top: 60px; padding-top: 52px; border-top: 1px solid rgba(255,255,255,0.08); display: grid; grid-template-columns: 30% 1fr; gap: 48px; align-items: start; }
.vemerge-tl-left { position: sticky; top: 100px; }
.vemerge-tl-left .vemerge-zone-title { margin-bottom: 12px; }
.vemerge-tl-body { position: relative; display: flex; flex-direction: column; gap: 0; }
.vemerge-tl-spine { position: absolute; left: calc(64px + 16px + 8px - 1px); top: 8px; bottom: 8px; width: 2px; background: linear-gradient(to bottom, rgba(255,182,6,0.70), rgba(255,182,6,0.10)); border-radius: 2px; }
.vemerge-tl-item { display: grid; grid-template-columns: 64px 16px 1fr; gap: 0 16px; align-items: flex-start; padding-bottom: 36px; }
.vemerge-tl-item:last-child { padding-bottom: 0; }
.vemerge-tl-marker { display: flex; align-items: flex-start; justify-content: flex-end; padding-top: 1px; }
.vemerge-tl-year { font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: rgba(255,255,255,0.45); text-align: right; line-height: 1.3; white-space: nowrap; }
.vemerge-tl-dot { width: 14px; height: 14px; border-radius: 50%; background: var(--accent-color); box-shadow: 0 0 0 4px rgba(255,182,6,0.18); flex-shrink: 0; position: relative; z-index: 1; margin-top: 1px; }
.vemerge-tl-content { padding-top: 0; }
.vemerge-tl-title { font-size: 1rem; font-weight: 700; color: var(--white); margin: 0 0 6px; line-height: 1.3; }
.vemerge-tl-desc { font-size: 0.9rem; color: rgba(255,255,255,0.65); line-height: 1.65; margin: 0; }
@media (max-width: 991.98px) {
    .vemerge-tl-wrap { grid-template-columns: 1fr; gap: 28px; }
    .vemerge-tl-left { position: static; }
}
@media (max-width: 575.98px) {
    .vemerge-tl-item { grid-template-columns: 45px 16px 1fr; }
    .vemerge-tl-spine { left: calc(45px + 16px + 8px - 1px); }
}

/* -- ZONE 6: Comparison cards -- */
.vemerge-compare-wrap { display: grid; grid-template-columns: 30% 1fr; gap: 48px; align-items: start; }
.vemerge-cmp-left { position: sticky; top: 100px; }
.vemerge-cmp-left .vemerge-zone-title { margin-bottom: 12px; }
.vemerge-cmp-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.vemerge-cmp-card { border-radius: 16px; padding: 28px 24px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); }
.vemerge-cmp-card--plus { border-color: rgba(255,182,6,0.45); background: rgba(255,182,6,0.04); }
.vemerge-cmp-label { font-size: 0.95rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: rgba(255,255,255,0.55); margin-bottom: 20px; }
.vemerge-cmp-card--plus .vemerge-cmp-label { color: var(--accent-color); }
.vemerge-cmp-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.vemerge-cmp-list li { font-size: 0.92rem; color: rgba(255,255,255,0.75); line-height: 1.6; padding-left: 16px; position: relative; }
.vemerge-cmp-list li::before { content: ''; position: absolute; left: 0; top: 9px; width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,0.25); }
.vemerge-cmp-card--plus .vemerge-cmp-list li { color: rgba(255,255,255,0.88); padding-left: 26px; }
.vemerge-cmp-card--plus .vemerge-cmp-list li::before { display: none; }
.vemerge-cmp-check { position: absolute; left: 0; top: 1px; width: 17px; height: 17px; flex-shrink: 0; }
@media (max-width: 991.98px) {
    .vemerge-compare-wrap { grid-template-columns: 1fr; gap: 28px; }
    .vemerge-cmp-left { position: static; }
}
@media (max-width: 575.98px) {
    .vemerge-cmp-cards { grid-template-columns: 1fr; }
}

/* -- ZONE 7: Real Stories -- */
.vemerge-stories-wrap { display: flex; flex-direction: column; gap: 36px; }
.vemerge-rs-header .vemerge-zone-title { margin-bottom: 8px; }

/* Toggle pill */
.vemerge-ba-wrap { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.vemerge-ba-hint { font-size: 0.75rem; color: rgba(255,255,255,0.35); margin: 0; letter-spacing: 0.02em; }
.vemerge-ba-pill { position: relative; display: inline-flex; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.13); border-radius: 50px; padding: 4px; }
.vemerge-ba-pill-thumb { position: absolute; top: 4px; bottom: 4px; left: 4px; width: calc(50% - 4px); border-radius: 40px; background: rgba(255,255,255,0.13); border: 1px solid rgba(255,255,255,0.22); transition: left 0.34s cubic-bezier(0.34,1.3,0.64,1), background 0.32s, border-color 0.32s; pointer-events: none; }
.vemerge-ba-pill.is-after .vemerge-ba-pill-thumb { left: 50%; background: rgba(255,182,6,0.20); border-color: rgba(255,182,6,0.45); }
.vemerge-ba-btn { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 7px; padding: 10px 26px; border: none; background: transparent; font-family: "Montserrat", sans-serif; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.02em; color: rgba(255,255,255,0.32); border-radius: 40px; cursor: pointer; transition: color 0.3s; white-space: nowrap; min-width: 130px; justify-content: center; }
.vemerge-ba-btn.is-active { color: var(--white); }
.vemerge-ba-btn--after.is-active { color: var(--accent-color); }
.vemerge-ba-btn-icon--before { display: inline-block; width: 10px; height: 10px; border-radius: 50%; border: 2px solid currentColor; opacity: 0.6; }
.vemerge-ba-check { opacity: 0; transform: scale(0.6); transition: opacity 0.3s, transform 0.3s; }
.vemerge-ba-btn--after.is-active .vemerge-ba-check { opacity: 1; transform: scale(1); }
.vemerge-plus-sup-sm { font-size: 0.55em; vertical-align: super; }

/* Carousel outer */
.vemerge-car-outer { display: flex; align-items: stretch; gap: 12px; }
.vemerge-car-viewport { overflow: hidden; flex: 1; }
.vemerge-car-track { display: flex; gap: 20px; transition: transform 0.42s cubic-bezier(0.25, 0.46, 0.45, 0.94); will-change: transform; align-items: stretch; }

/* Cards — dim non-active, highlight active */
.vemerge-rs2-card { flex: 0 0 calc(33.333% - 14px); background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-top: 3px solid transparent; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 14px; opacity: 0.52; transform: scale(0.96); transition: opacity 0.38s, transform 0.38s, box-shadow 0.38s, border-color 0.38s, background 0.38s; cursor: default; }
.vemerge-rs2-card.is-center { opacity: 1; transform: translateY(-6px) scale(1); border-top-color: var(--accent-color); border-color: rgba(255,182,6,0.28); background: rgba(255,255,255,0.08); }

/* State tag inside card */
.vemerge-rs2-state-tag { display: inline-flex; align-items: center; gap: 5px; font-size: 0.6rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.10em; padding: 3px 9px; border-radius: 20px; transition: background 0.3s, color 0.3s; background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.40); align-self: flex-start; }
.vemerge-rs2-card.is-after .vemerge-rs2-state-tag { background: rgba(255,182,6,0.18); color: var(--accent-color); }

/* Indicator bar */
.vemerge-rs2-ind { display: flex; align-items: center; gap: 8px; }
.vemerge-rs2-ind-label { font-size: 0.60rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: rgba(255,255,255,0.28); transition: color 0.3s; white-space: nowrap; }
.vemerge-rs2-ind--a { color: rgba(255,182,6,0.30); }
.vemerge-rs2-ind-line { flex: 1; height: 3px; background: rgba(255,255,255,0.09); border-radius: 3px; position: relative; overflow: visible; }
.vemerge-rs2-ind-dot { width: 11px; height: 11px; border-radius: 50%; background: rgba(255,255,255,0.35); box-shadow: 0 0 0 2px rgba(255,255,255,0.10); position: absolute; left: 0; top: 50%; transform: translateY(-50%); transition: left 0.48s cubic-bezier(0.34,1.56,0.64,1), background 0.35s, box-shadow 0.35s; }
.vemerge-rs2-card.is-after .vemerge-rs2-ind-dot { left: calc(100% - 11px); background: var(--accent-color); box-shadow: 0 0 0 3px rgba(255,182,6,0.28), 0 0 8px rgba(255,182,6,0.40); }
.vemerge-rs2-card.is-after .vemerge-rs2-ind--b { color: rgba(255,255,255,0.18); }
.vemerge-rs2-card.is-after .vemerge-rs2-ind--a { color: var(--accent-color); }

/* Card title */
.vemerge-rs2-title { font-size: 0.95rem; font-weight: 700; color: var(--white); margin: 0; line-height: 1.3; }

/* Content before/after */
.vemerge-rs2-content { position: relative; min-height: 90px; }
.vemerge-rs2-before, .vemerge-rs2-after { font-size: 0.875rem; line-height: 1.68; margin: 0; position: absolute; top: 0; left: 0; right: 0; transition: opacity 0.38s ease, transform 0.38s ease; }
.vemerge-rs2-before { color: rgba(255,255,255,0.50); opacity: 1; transform: translateY(0); }
.vemerge-rs2-after  { color: rgba(255,255,255,0.88); opacity: 0; transform: translateY(10px); pointer-events: none; }
.vemerge-rs2-card.is-after .vemerge-rs2-before { opacity: 0; transform: translateY(-10px); pointer-events: none; }
.vemerge-rs2-card.is-after .vemerge-rs2-after  { opacity: 1; transform: translateY(0); pointer-events: auto; }

/* Nav buttons */
.vemerge-car-btn { width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.14); color: var(--white); font-size: 1rem; cursor: pointer; flex-shrink: 0; transition: background 0.2s, border-color 0.2s, transform 0.2s; display: flex; align-items: center; justify-content: center; align-self: center; }
.vemerge-car-btn:hover:not(:disabled) { background: rgba(255,182,6,0.18); border-color: rgba(255,182,6,0.45); transform: scale(1.10); }
.vemerge-car-btn:disabled { opacity: 0.22; cursor: default; }

/* Dots */
.vemerge-car-dots { display: flex; align-items: center; justify-content: center; gap: 8px; }
.vemerge-car-dot { width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,0.22); border: none; cursor: pointer; padding: 0; transition: background 0.3s, width 0.3s, border-radius 0.3s; }
.vemerge-car-dot.active { width: 28px; height: 8px; border-radius: 4px; background: var(--accent-color); }

/* Responsive */
@media (max-width: 991.98px) {
    .vemerge-rs2-card { flex: 0 0 calc(50% - 10px); }
}
@media (max-width: 767.98px) {
    .vemerge-ba-btn { min-width: 110px; padding: 9px 18px; font-size: 0.7rem; }
}
@media (max-width: 575.98px) {
    .vemerge-rs2-card { flex: 0 0 calc(100% - 0px); opacity: 1; transform: scale(1); border-top-color: var(--accent-color); border-color: rgba(255,182,6,0.22); background: rgba(255,255,255,0.07); }
    .vemerge-rs2-card.is-center { transform: none; box-shadow: none; }
    .vemerge-car-outer { gap: 8px; }
    .vemerge-car-btn { width: 36px; height: 36px; font-size: 0.85rem; }
    .vemerge-ba-btn { min-width: 100px; padding: 9px 16px; font-size: 0.7rem; }
    .vemerge-stories-wrap { gap: 24px; }
}

/* -- ZONE 8: FAQ -- */
.vemerge-faq-wrap { margin-top: 60px; padding-top: 52px; border-top: 1px solid rgba(255,255,255,0.08); display: grid; grid-template-columns: 30% 1fr; gap: 48px; align-items: start; }
.vemerge-faq-left { position: sticky; top: 100px; }
.vemerge-faq-left .vemerge-zone-title { margin-bottom: 12px; }
.vemerge-faq-list { display: flex; flex-direction: column; gap: 0; border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; overflow: hidden; }
.vemerge-faq-item { border-bottom: 1px solid rgba(255,255,255,0.07); }
.vemerge-faq-item:last-child { border-bottom: none; }
.vemerge-faq-q { width: 100%; background: transparent; border: none; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; text-align: left; color: var(--white); font-size: 0.95rem; font-weight: 600; cursor: pointer; transition: background 0.2s; line-height: 1.4; }
.vemerge-faq-q:hover { background: rgba(255,255,255,0.04); }
.vemerge-faq-item.is-open .vemerge-faq-q { background: rgba(255,255,255,0.05); color: var(--white); }
.vemerge-faq-icon { width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid rgba(255,255,255,0.30); flex-shrink: 0; position: relative; transition: border-color 0.25s, background 0.25s, transform 0.3s; }
.vemerge-faq-icon::before, .vemerge-faq-icon::after { content: ''; position: absolute; background: rgba(255,255,255,0.60); border-radius: 2px; transition: transform 0.3s, opacity 0.3s; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.vemerge-faq-icon::before { width: 8px; height: 1.5px; }
.vemerge-faq-icon::after  { width: 1.5px; height: 8px; }
.vemerge-faq-item.is-open .vemerge-faq-icon { border-color: var(--accent-color); background: rgba(255,182,6,0.12); transform: rotate(45deg); }
.vemerge-faq-item.is-open .vemerge-faq-icon::before, .vemerge-faq-item.is-open .vemerge-faq-icon::after { background: var(--accent-color); }
.vemerge-faq-a { max-height: 0; overflow: hidden; transition: max-height 0.38s ease; }
.vemerge-faq-a p { padding: 0 24px 20px; font-size: 0.9rem; color: rgba(255,255,255,0.65); line-height: 1.75; margin: 0; }
@media (max-width: 991.98px) {
    .vemerge-faq-wrap { grid-template-columns: 1fr; gap: 28px; }
    .vemerge-faq-left { position: static; }
}

/* -- Responsive -- */
@media (max-width: 991.98px) {
    .vemerge-section { padding: 60px 0 20px; }
    .vemerge-mid-row { margin-top: 40px; padding-top: 36px; }
    .vemerge-stats-inline { justify-content: flex-start; margin-top: 32px; }
    .vemerge-stat-item { padding: 0 20px; }
    .vemerge-stat-item:first-child { padding-left: 0; }
    .vemerge-stat-divider { height: 36px; }
    .vemerge-steps-wrap, .vemerge-compare-wrap, .vemerge-stories-wrap { margin-top: 44px; padding-top: 40px; }
}
@media (max-width: 767.98px) {
    .vemerge-section { padding: 48px 0 18px; }
    .vemerge-hero-title { font-size: clamp(1.5rem, 6vw, 2rem); }
    .vemerge-partner-strip-wrap { grid-template-columns: 1fr; padding: 20px; }
    .vemerge-strip-eyebrow { text-align: left; padding-right: 0; border-right: none; border-bottom: 1px solid rgba(255,255,255,0.15); padding-bottom: 12px; margin-bottom: 12px; }
    .vemerge-partner-strip { padding-left: 0; gap: 12px 16px; }
    .vemerge-partner-logo img { height: 32px; }
    .vemerge-partner-logo { padding: 8px 12px; }
    .vemerge-benefit-card { padding: 24px 16px 20px; }
    .vemerge-stat-divider { display: none; }
    .vemerge-stats-inline { gap: 12px 0; }
    .vemerge-stat-item { padding: 8px 16px; }
    .vemerge-story-body { grid-template-columns: 1fr; }
    .vemerge-story-before { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.06); }
    .vemerge-story-arrow { padding: 12px 0; }
    .vemerge-compare-col { padding: 10px; font-size: 0.78rem; }
}
@media (max-width: 575.98px) {
    .vemerge-hero-title { font-size: clamp(1.35rem, 5.5vw, 1.8rem); }
    .vemerge-stats-inline { flex-wrap: wrap; justify-content: center; }
    .vemerge-stat-item { flex: 0 0 50%; padding: 12px 0; }
    .vemerge-cmp-cards { grid-template-columns: 1fr; }
}

/* Featured facilities section redesign (mosaic layout) */
.featured-section .section-heading h2 {
    margin-bottom: 20px;
}
.featured-section .section-heading {
    margin-bottom: 48px;
}

.featured-section .grid-tabs-wrap {
    background: transparent;
    border: 0;
    padding: 0;
    gap: 10px;
    margin-bottom: 26px;
}

.featured-section .grid-tabs-wrap .nav-link {
    border-radius: 999px;
    border: 1px solid rgba(19, 39, 72, 0.16);
    background: #ffffff;
    color: #2e3c52;
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.2;
    padding: 10px 18px;
}

.featured-section .grid-tabs-wrap .nav-link.active {
    background: #112a52 !important;
    border-color: #112a52 !important;
    color: #ffffff !important;
}

.featured-section .featured-mosaic-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(228px, 1fr);
    gap: 12px;
    align-items: stretch;
}

.featured-section .featured-mosaic-grid > [class*="col-"] {
    width: 100%;
    max-width: none;
    flex: 0 0 auto;
    padding: 0;
    margin-top: 0;
}

.featured-section .featured-mosaic-grid > [class*="col-"]:first-child {
    grid-column: 1;
    grid-row: 1 / span 2;
}

.featured-section .featured-mosaic-grid .grid-card {
    border: 0;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
    overflow: hidden;
    min-height: 100%;
    height: 100%;
    background-color: #101c32;
    isolation: isolate;
    transform: translateZ(0);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.featured-section .featured-mosaic-grid .grid-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
}

.featured-section .featured-mosaic-grid > [class*="col-"]:first-child .grid-card {
    min-height: calc((228px * 2) + 16px);
}

/* Remove full-image overlay; we use a text-only gradient panel instead */
.featured-section .featured-mosaic-grid .grid-card::before {
    display: none;
}

.featured-section .featured-mosaic-grid .grid-card::after {
    display: none;
}

.featured-section .featured-mosaic-grid .grid-card .grid-card-img {
    display: block;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center;
    border-radius: 0 !important;
    z-index: -1 !important;
    transform: scale(1.01);
    filter: saturate(1.02) contrast(1.02);
}

.featured-section .featured-mosaic-grid .grid-card-body {
    display: flex;
    flex-direction: column;
    justify-content: flex-end !important;
    align-items: flex-start;
    height: 100%;
    padding: 12px 12px 12px;
    position: relative;
    z-index: 1;
    background: none;
}

/* Featured mosaic: give the large (first) card a bit more breathing room */
.featured-section .featured-mosaic-grid > [class*="col-"]:first-child .grid-card-body {
    padding: 18px 18px 18px;
}

.featured-section .featured-mosaic-grid > [class*="col-"]:first-child .featured-content-panel {
    padding: 14px 14px 12px;
}

.featured-section .featured-mosaic-grid .featured-content-panel {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: auto;
    width: 100%;
    padding: 12px 12px 10px;
    border-radius: 14px;
    background: linear-gradient(
        to top,
        rgba(4, 9, 20, 0.78) 0%,
        rgba(8, 16, 32, 0.52) 55%,
        rgba(8, 16, 32, 0.12) 100%
    );
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.featured-section .featured-mosaic-grid > [class*="col-"]:first-child .featured-content-panel {
    width: 100%;
    /* padding: 0; */
}

.featured-section .featured-mosaic-grid .left-icon {
    width: 54px;
    height: 54px;
    margin: 0 auto auto;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(3px);
}

.featured-section .featured-mosaic-grid .left-icon img {
    width: 28px;
    height: 28px;
    filter: none;
}

.featured-section .featured-mosaic-grid .grid-card-title {
    font-size: 1.8rem;
    line-height: 1.24;
    letter-spacing: -0.01em;
    margin-bottom: 4px;
    color: #ffffff;
    text-shadow: none;
}

.featured-section .featured-mosaic-grid > [class*="col-"]:not(:first-child) .grid-card-title {
    font-size: 1.2rem;
    line-height: 1.3;
}

.featured-section .featured-mosaic-grid .grid-card-desc,
.featured-section .featured-mosaic-grid .grid-card-desc p {
    color: rgba(235, 244, 255, 0.82);
    margin-bottom: 0;
    font-size: 0.98rem;
    line-height: 1.5;
    text-shadow: none;
}

.featured-section .featured-mosaic-grid > [class*="col-"]:not(:first-child) .grid-card-desc,
.featured-section .featured-mosaic-grid > [class*="col-"]:not(:first-child) .grid-card-desc p {
    font-size: 0.94rem;
    line-height: 1.45;
}

.featured-section .featured-mosaic-grid .ranking-card-link {
    margin-top: 10px;
    color: #ffffff;
    text-decoration: none;
      font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    /* font-size: 0.875rem;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0; */
    padding: 0;
    border-radius: 0;
    border: 0;
    background: transparent;
}

.featured-section .featured-mosaic-grid .ranking-card-link span img {
    filter: brightness(0) saturate(100%) invert(100%);
}

.featured-section .featured-mosaic-grid .ranking-card-link:hover {
    background: transparent;
    border-color: transparent;
}

.featured-section .featured-support-grid .placement-info-card {
    border-radius: 16px !important;
    border: 0 !important;
    box-shadow: none !important;
    height: 100%;
    background: #ffffff !important;
}

.featured-section .featured-support-grid .col-lg-6:last-child .placement-info-card {
    background: #ffffff !important;
}

.featured-section .featured-support-grid .placement-info-card h5,
.featured-section .featured-support-grid .placement-info-card ul li,
.featured-section .featured-support-grid .placement-info-card ul li a {
    color: var(--text-dark) !important;
}

.featured-section .featured-support-grid .placement-info-card ul li {
    font-weight: 500;
    opacity: 1;
}

.featured-section .featured-support-grid .placement-info-card ul li::before {
    filter: none;
    opacity: 1;
}

@media (max-width: 1199.98px) {
    .featured-section .featured-mosaic-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: minmax(220px, 1fr);
    }

    .featured-section .featured-mosaic-grid > [class*="col-"]:first-child {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .featured-section .featured-mosaic-grid > [class*="col-"]:first-child .grid-card {
        min-height: 340px;
    }
}

@media (max-width: 767.98px) {
    .featured-section .grid-tabs-wrap {
        margin-bottom: 20px;
    }

    .featured-section .featured-mosaic-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .featured-section .featured-mosaic-grid .grid-card,
    .featured-section .featured-mosaic-grid > [class*="col-"]:first-child .grid-card {
        min-height: 220px;
    }

    .featured-section .featured-mosaic-grid .grid-card-title {
        font-size: 1.25rem;
    }

    .featured-section .featured-mosaic-grid .grid-card-body {
        padding: 12px 12px 12px;
    }

    .featured-section .featured-mosaic-grid .featured-content-panel,
    .featured-section .featured-mosaic-grid > [class*="col-"]:first-child .featured-content-panel {
        width: 100%;
        /* padding: 0; */
    }

    .featured-section .featured-mosaic-grid .grid-card-desc,
    .featured-section .featured-mosaic-grid .grid-card-desc p {
        font-size: 0.9rem;
        line-height: 1.4;
    }

}

/* VEmerge+ secondary banner description width */
.vemerge-secondary-banner-desc {
    width: 100%;
    max-width: 50%;
}

@media (max-width: 767.98px) {
    .vemerge-secondary-banner-desc {
        max-width: 100%;
    }
}

/* Industry partners programmes: logo tabs */
.industry-partners-programmes .grid-tabs-wrap {
    gap: 10px !important;
    align-items: center;
    padding: 10px 12px;
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid rgba(0, 33, 71, 0.10);
}

.industry-partners-programmes .grid-tabs-wrap::-webkit-scrollbar {
    display: none;
}

.industry-partners-programmes .grid-tabs-wrap .nav-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 52px;
    min-width: 156px;
    padding: 8px 14px;
    border-radius: 14px;
    background: #ffffff !important;
    border: 1px solid rgba(0, 33, 71, 0.12) !important;
    box-shadow: 0 6px 14px rgba(0, 33, 71, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.industry-partners-programmes .grid-tabs-wrap .nav-link.active,
.industry-partners-programmes .grid-tabs-wrap .nav-link[aria-selected="true"] {
    border: 2px solid var(--primary-blue-color) !important;
    background: #ffffff !important;
    box-shadow:
        0 10px 22px rgba(0, 33, 71, 0.16),
        0 0 0 2px rgba(0, 33, 71, 0.10) inset;
}

.industry-partners-programmes .grid-tabs-wrap .nav-link .partner-tab-logo {
    height: 26px;
    width: auto;
    max-width: 140px;
    display: block;
    object-fit: contain;
}

.industry-partners-programmes .grid-tabs-wrap .nav-link:not(.active) .partner-tab-logo {
    filter: grayscale(0.55) contrast(1.03);
    opacity: 0.9;
}

.industry-partners-programmes .grid-tabs-wrap .nav-link.active .partner-tab-logo {
    filter: none;
    opacity: 1;
}

/* Desktop/tablet: wrap nicely (no scroll bar needed) */
@media (min-width: 768px) {
    .industry-partners-programmes .grid-tabs-wrap {
        flex-wrap: wrap !important;
        overflow: visible;
        justify-content: center;
    }
}

/* Mobile: one-line row with smooth horizontal scroll */
@media (max-width: 767.98px) {
    .industry-partners-programmes .grid-tabs-wrap {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        justify-content: flex-start;
        padding: 10px 10px 6px;
    }

    .industry-partners-programmes .grid-tabs-wrap .nav-link {
        min-height: 48px;
        min-width: 138px;
        padding: 7px 12px;
    }

    .industry-partners-programmes .grid-tabs-wrap .nav-link .partner-tab-logo {
        height: 22px;
        max-width: 120px;
    }
}

/* Infrastructure labs: image icons + upgraded cards */
#fee-structure.infrastructure-labs-section .infra-lab-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(51, 109, 154, 0.18);
    background: #0f223f;
    box-shadow:
        0 10px 26px rgba(0, 33, 71, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    height: 100%;
    min-height: 220px;
    display: flex;
    flex-direction: column;
}

/* Career section: equal-height cards + consistent typography */
.career-section .careerSwiper .swiper-wrapper {
    align-items: stretch;
}

.career-section .careerSwiper .swiper-slide {
    height: auto;
    display: flex;
}

.career-section .career--card-box {
    height: 100%;
    width: 100%;
}

.career-section .career--card-box .career-content {
    align-items: flex-start;
    text-align: left;
    gap: 10px;
}

.career-section .career--card-box .career-title {
    margin-bottom: 0;
    font-weight: 700;
    line-height: 1.25;
    font-size: 0.98rem;
    text-align: left;
    width: 100%;
}

.career-section .career--card-box .career-desc {
    margin-bottom: 0;
    line-height: 1.6;
    color: var(--text-light);
    font-size: 0.84rem;
    text-align: left;
    width: 100%;
}

.career-section .career--card-box .career-dec {
    text-align: left !important;
    width: 100%;
    font-size: 0.9rem;
    line-height: 1.6;
}

.career-section .career--card-box .career-dec p {
    margin-bottom: 0.6rem;
}

.career-section .career--card-box .career-dec p:last-child {
    margin-bottom: 0;
}

.career-section .career--card-box .btn {
    margin-top: 8px;
}

@media (max-width: 991.98px) {
    .career-section .career--card-box .career-content {
        padding: 22px 16px;
    }
    .career-section .career--card-box .career-title {
        font-size: 1rem;
    }
    .career-section .career--card-box .career-desc,
    .career-section .career--card-box .career-dec {
        font-size: 0.88rem;
    }
}

/* CTA section: single clean CTA (index2) */
.CTA-section .cta-single-card {
    background: #ffffff;
    border: 1px solid rgba(0, 33, 71, 0.12);
    border-radius: 18px;
    padding: 28px 26px;
    box-shadow: 0 12px 28px rgba(0, 33, 71, 0.08);
    text-align: center;
}

.CTA-section .cta-single-title {
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--primary-blue-color);
}

.CTA-section .cta-single-eyebrow {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--accent-color);
    margin-left: auto;
    margin-right: auto;
}

.CTA-section .cta-single-desc {
    color: var(--text-light);
    line-height: 1.6;
    max-width: 46rem;
    margin-left: auto;
    margin-right: auto;
    font-size: 14px !important;
}

.CTA-section .cta-single-actions {
    margin-top: 18px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

@media (max-width: 767.98px) {
    .CTA-section .cta-single-card {
        padding: 22px 16px;
        border-radius: 16px;
    }
    .CTA-section .cta-single-actions .btn {
        width: 100%;
        max-width: 420px;
    }
}

#fee-structure.infrastructure-labs-section .infra-lab-card:hover {
    transform: translateY(-2px);
    border-color: rgba(51, 109, 154, 0.32);
    box-shadow:
        0 18px 44px rgba(0, 33, 71, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

#fee-structure.infrastructure-labs-section .infra-lab-figure,
#fee-structure.infrastructure-labs-section .infra-lab-figure--placeholder {
    position: relative;
    inset: auto;
    width: 100%;
    height: 170px;
}

#fee-structure.infrastructure-labs-section .infra-lab-figure--placeholder {
    background:
        radial-gradient(900px 360px at 18% 10%, rgba(255, 182, 6, 0.18) 0%, rgba(16, 28, 50, 0) 55%),
        radial-gradient(900px 420px at 80% 0%, rgba(56, 120, 255, 0.26) 0%, rgba(16, 28, 50, 0) 60%),
        linear-gradient(135deg, rgba(17, 42, 82, 0.92) 0%, rgba(10, 25, 47, 0.96) 100%);
}

#fee-structure.infrastructure-labs-section .infra-lab-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transform: scale(1.04);
    filter: saturate(1.06) contrast(1.05);
}

#fee-structure.infrastructure-labs-section .infra-lab-caption {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 14px 14px 16px;
    background: #ffffff;
    flex: 1 1 auto;
}

#fee-structure.infrastructure-labs-section .infra-lab-name {
    color: var(--primary-text-color);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.01em;
    text-shadow: none;
    max-width: 100%;
}

@media (max-width: 767.98px) {
    #fee-structure.infrastructure-labs-section .infra-lab-card {
        min-height: 190px;
        border-radius: 14px;
    }
    #fee-structure.infrastructure-labs-section .infra-lab-figure,
    #fee-structure.infrastructure-labs-section .infra-lab-figure--placeholder {
        height: 150px;
    }
    #fee-structure.infrastructure-labs-section .infra-lab-caption {
        padding: 12px 12px 14px;
    }
}

.grid-section.vemerge-why-different-section.why-choose-section .left-icon .vemerge-why-emoji {
    font-size: 1.5rem;
    line-height: 1;
    display: block;
}

