:root {
     
    --thm-red: #962b35;
    --thm-gray: #edf0f6;
    --thm-blue: #002f86;
     
}

:root {
  --blue: #063d93;
  --blue-dark: #032e73;
  --red: #a40720;
  --ink: #10213f;
  --muted: #506079;
  --paper: #ffffff;
  --soft: #eeeeef;
  --gradient: linear-gradient(105deg, #a52a39 0%, #5a2d67 47%, #003f96 100%);
  --display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --body: "Asap", "Myriad Pro", "Myriad", "Segoe UI", Arial, sans-serif;
  --container: 1180px;
  --narrow: 1080px;
  --radius: 8px;
  --section: clamp(3.25rem, 5.5vw, 5.5rem);
}

html{
  scroll-behavior:smooth;
}

#leadership-section{
  scroll-margin-top:100px;
}

#leadership-section{
  animation:highlight 1.5s ease;
}

@keyframes highlight{
  0%{background:rgba(13,110,253,0.2);}
  100%{background:transparent;}
}

body {
     
    font-size: 0.875rem;
    line-height: 1.6;
    font-family:'Poppins', sans-serif;
    color: #555;
}

a {
    color: var(--thm-blue);
    font-size: 0.875rem;
}


h1,h2,h3,h4,h5,h6,.section-title{
   font-family:'Playfair Display', serif;
}

h1{ font-size:39px; }
h2{ font-size:36px; }

img{
  max-width:100%;
  height:auto;
}



 
#school-top-nav {
  background: #A02B2F;
  color: white !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
  font-family: inherit !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
  opacity: 1;
  transition: opacity 0.5s ease-out;
  top: 0px;
    width: 100%;
    position: absolute; 
    z-index: 99999 !important;
}
.top-nav-container {
  max-width: 1140px;
  margin: 0 auto;
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  padding: 0 12px;
}
.top-nav-left {
  display: flex !important;
  align-items: center;
  gap: 20px;
}
.top-nav-left span, .top-nav-left a {
  display: flex !important;
  align-items: center;
  gap: 5px;
  color: white !important;
  text-decoration: none !important;
  cursor: pointer !important;
}
.top-nav-social {
  display: flex !important;
  gap: 15px;
}
.top-nav-social a {
  color: white !important;
  font-size: 18px !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}
.top-nav-social a:hover {
  opacity: 0.8 !important;
  transform: scale(1.1) !important;
}

 


/*Header Main Start*/
header nav.navbar{
    background: -webkit-linear-gradient(left, #480048, #C04848);
    background: linear-gradient(to right, #A12B2F, #002F87);
    padding: 15px 20px;
}
header nav .nav-link{
    color:#fff;
}

.main-header{

    /*backdrop-filter: blur(10px);*/
    background: rgba(255,255,255,0.7);
    /*transition:.3s;*/
}

.main-container.scrolled .main-header{
    background:#fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.26);
}

.carousel-item{
  position:relative;
}

.carousel-item::before{
  content:"";
  position:absolute;
  inset:0;
  /*background:linear-gradient(90deg, rgba(15,55,135,.7), rgba(122,22,50,.6));*/
  background:rgba(0,0,0,0.35);
}

.carousel-item img{
  height:80vh;
  object-fit:cover;
}

 

.carousel-caption h1{
  font-size:52px;
  animation:fadeUp 1s ease;
}

@keyframes fadeUp{
  from{opacity:0; transform:translateY(40px);}
  to{opacity:1; transform:translateY(0);}
}

.btn-light:hover .btn-white-blue:hover{
    background:var(--secondary);
    transform:translateY(-1px);
}

.btn-primary:hover{
  transform:translateY(-1px);
}

/*.activity-card{
    position:relative;
    border-radius:12px;
    overflow:hidden;
    text-align: center;
}

.activity-card:hover img{
  transform:scale(1.1);
}

 
.activity-card::before{
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
}

.activity-card img{
  transition:.4s;
  width:100%;
     
    object-fit:cover;
}*/

.overlay-text{
  position:absolute;
  bottom:0px;
  left:50%;
  width: 100%;
  transform:translateX(-50%);
  color:#fff;
    font-size:18px;
    text-align:center;
    z-index:2;
    padding: 10px 0px;
    background: linear-gradient(90deg, rgba(122,22,50,.65), rgba(15,55,135,.65));

}


.main-container{
    padding-top: 44px;
}
.main-container.scrolled{
    padding-top: 210px;
}
 

.main-container .main-header{
   transition:0.3s;
}
.main-container.scrolled .main-header{
   box-shadow:0 4px 12px rgba(0,0,0,.1);
}

.main-container.scrolled #school-top-nav{
   opacity: 0;
  /* Prevents the element from blocking clicks after it fades */
  pointer-events: none;
  height: 0px;
}
/*Header Main End*/

/*.carousel-item::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.4);
    top: 0;
    left: 0;
}*/
.carousel-caption {
    z-index: 2;
}

.carousel-caption h2 {
    font-size: 300% !important;
    line-height: 1.4;
}
.carousel-indicators [data-bs-target] {
    width: 8px;        /* dot size */
    height: 8px;
    border-radius: 50%; /* makes it fully round */
    background-color: #fff;
    opacity: 0.5;
}

.carousel-indicators .active {
    opacity: 1;
    transform: scale(1.2); /* active dot slightly bigger */
}
.home-btn{
    
}
.home-btn:hover{
    background:#962b35 !important;
    color:#fff !important;
    border: 2px solid #fff;
}
.campus-section {
    /*padding-bottom: 100px;*/
}

.campus-overlay {
  position: relative;
  inset: 0;
  background: linear-gradient(90deg, rgba(122,22,50,.85), rgba(15,55,135,.85));
  padding: 40px 40px;
  width: 60%;
  margin: auto;
  /*height: 350px;*/
  transform:translateY(-55%);
  /*margin-bottom:-23%;*/
}

.curriculars-section{
    margin-top: -5%;
}

.imageBgOverlayRight .img-director{
    width: 94%;
}



/* White Text */
 
.owl-dots {
    text-align:center;
    margin-top:20px;
}
.owl-dots .owl-dot span {
    width:10px;
    height:10px;
    background:#ccc;
    border-radius:50%;
    display:block;
     margin: 0 2px;
}
.owl-dots .owl-dot.active span {
    background:#0d6efd;
}

.register-section{
    position:relative;
    background:url('../../assets/images/writting-image.jpg') center/cover no-repeat;
    padding:80px 0;
    color:#fff;
}
 
.p-about-us{
    /*line-height: 1.8;*/
    text-align: justify;
}
.small-title{
    font-size: 28px;
}

/* Color Overlay */
.register-section::before{
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background:linear-gradient(90deg, rgba(139,44,58,0.9), rgba(31,60,136,0.85));
}
.reg-title{
    font-size: 44px;
}
.reg-desc{
    font-size: 20px;
}


/* Content above overlay */
.register-content{
    position:relative;
    z-index:2;
}

.faq-section .faq-right{
    color:#fff;
    padding:35px 50px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;     
}

.faq-section h2{
    font-size: 34px;
}

.faq-img{
    width:100%;
    height:100%;
    min-height:350px;
    object-fit:cover;
}



/* White Rounded Button */
.btn-white-blue{
    background:#fff;
    color:#002f86;
    border-radius:50px;
    padding:10px 25px;
    font-weight:600;
    border: 2px solid #fff;
}
.btn-white-blue:hover{
    background:transparent;
    color:#fff;
    border: 2px solid #fff;
}

.bottom-section{
	background: -webkit-linear-gradient(left, #480048, #C04848);
    background: linear-gradient(to right, #A12B2F, #002F87);
}
.inspiredLogo-section{
  z-index: -100;
  position: relative; 
}
.inspiredLogo-section .image-wrapper img{
    width:150px;
}
.inspiredLogo-section .logoTitle{
   font-weight: bold;
   font-size: 40px;
   color: #000;
    line-height: 1;
}
.inspiredLogo-section .logoTitle span{
   font-size: 70px;
}
.inspiredLogo-section .subTitle{
   font-size: 20px;
   color: #000;
}

/*Contact US*/
.quick-links li{
   margin-bottom:8px;
}

.quick-links a{
   text-decoration:none;
   color:#333;
}

.quick-links a:hover{
   color:#0d6efd;
}

.social-icon{
   display:inline-flex;
   align-items:center;
   justify-content:center;
   width:42px;
   height:42px;
   background:#002f86;
   color:#fff;
   margin-right:10px;
   text-decoration:none;
   font-size:16px;
   transition: transform .2s, box-shadow .2s;
   padding: 10px;
   border-radius: 50%;
}


/*About Us*/
/* ==================  */

.page-banner{
  position:relative;
}

.banner-wrapper{
  position:relative;
}

.banner-wrapper img{
  width:100%;
  height:60vh;
  object-fit:cover;
}

/* Overlay */
.banner-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(15,55,135,.7), rgba(122,22,50,.6));
}

/* Title */
.banner-title{
  color:#fff;
  font-size:48px;
  font-family:'Playfair Display', serif;
}

.intro-text{
  font-size:18px;
  line-height:1.8;
  color:#555;
  font-family:'Poppins', sans-serif;
}

.icon-box{
  padding:30px;
  background:#fff;
  border-radius: 10px;
  border: 1.5px solid #002f86;
  transition:.3s;
  height:100%;
  color: #002f86;
}

.icon-box:hover{
  transform:translateY(-8px);
  box-shadow:0 10px 25px rgba(0,0,0,.1);
}

.icon img{
    width: 40px;
}

.icon-box h4{
  font-family:'Playfair Display', serif;
  margin-bottom:10px;
}

.icon-box p{
  font-family:'Poppins', sans-serif;
  color:#555;
}


.history-tabs .nav-link{
  background:#f1f1f1;
  margin-bottom:10px;
  border-radius:8px;
  text-align:left;
  font-weight:500;
}

.history-tabs .nav-link.active{
  background:#0d6efd;
  color:#fff;
}

/* Card */
.history-card{
  height:350px;
  background-size:cover;
  background-position:center;
  border-radius:15px;
  position:relative;
  overflow:hidden;
}

/* Overlay */
.history-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(15,55,135,.8), rgba(122,22,50,.7));
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
}

.history-overlay h3{
  font-family:'Playfair Display', serif;
}



.team-card{
  position:relative;
  overflow:hidden;
  border-radius:15px;
  max-width: 600px;
    max-height: 350px;
}

.team-card img{
  transition:.4s;
}

/* Overlay */
.team-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(15,55,135,.9), rgba(122,22,50,.8));
  color:#fff;
  padding:20px;
  opacity:0;
  transition:.4s;
}

/* Hover Effect */
.team-card:hover img{
  transform:scale(1.1);
}

.team-card:hover .team-overlay{
  opacity:1;
}

.team-card:hover .team-info{
  display:none;
}

/* Info */
.team-info{
    position: absolute;
    bottom: 0px;
    color: #FFF;
    background: transparent;
    background: -webkit-linear-gradient(top, transparent, #000);
    background: linear-gradient(to bottom, transparent, #000);
    box-sizing: border-box;
    width: 100%;
    left: 0px;
}

.team-info h5{
  margin-top:10px;
}

 
 

    .aboutus-accordion {
      display: flex;
      width: 100%;
      height: 300px;
      overflow: hidden;
      position: relative;
    }

    .panel {
      border: 1px solid #002f86;
      position: relative;
      cursor: pointer;
      transition: all 0.5s ease;       
      padding: 45px 30px;
      color: #000;
      border-right: none;
      overflow: hidden;
    }

    .aboutus-accordion .panel:last-child {
      border-right: 1px solid #002f86;
    }
    .aboutus-accordion .panel:first-child {
      border-top-left-radius: 10px;
      border-bottom-left-radius: 10px;
    }

    .panel h3 {
      margin: 0;
      writing-mode: vertical-rl;
      transform: rotate(180deg);
    }

    .panel p{
      display: none;
    }

    .panel.active .panel-details{
        position: absolute;
        bottom:0px;
        padding: 10px 20px;
    }

    

    .panel.active p, .panel.active h3{
      display: block;
    }

    .panel.active h3 {      
      writing-mode: horizontal-tb;
      transform: none;
      color: #FFF;
      padding-bottom: 15px;
    }

.panel.active {
      flex: 5;
      background:url('../../assets/images/about-us.jpg') center/cover no-repeat;
      inset:0;       
      color: #fff;
}
  
/* Color Overlay */
.panel.active::before{
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background:linear-gradient(90deg, rgba(139,44,58,0.9), rgba(31,60,136,0.85));
}

#collapseOne.show .accordion-body{
    /*background: -webkit-linear-gradient(left, #480048, #C04848);
    background: linear-gradient(to right, #A12B2F, #002F87);
    color: #FFF;*/

}



.slider-section .slider-img{
  height:400px;
  object-fit:cover;
  border-radius:10px;
}

/* Optional: nicer arrows */
.slider-section .carousel-control-prev-icon,
.slider-section .carousel-control-next-icon{
  background-color:rgba(0,0,0,0.5);
  padding:20px;
  border-radius:50%;
}

.terms-ul{
    margin-left: 5px;
}
.terms-ul li{
    margin: 10px 0px;
}

.terms-ul i{
    margin-right: 5px;
}




/*
----------------------------------
              Header
---------------------------------
*/

.site-header {  
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--gradient);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
}

.site-header.header-fixed-top{
  position: fixed !important;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030
}

.nav-wrap {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  width: min(100% - 2rem, 1320px);
  min-height: clamp(86px, 9vw, 124px);
  align-items: center;
  gap: 1rem;
  margin-inline: auto;
}

.brand img {
  width: 60px;
}

.nav-link,
.nav-actions > a,
.enquire-menu button,
.menu-button {
  color: #fff;
  font-size: 0.88rem;
  font-weight: 700;
}

.menu-area {
  justify-self: start;
}

.nav-actions {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: clamp(0.7rem, 1.5vw, 1.3rem);
}

.nav-actions > a,
.enquire-menu button {
  padding: 0.55rem 0.9rem;
  border: 1px solid rgba(255, 255, 255, 0.46);
  border-radius: 999px;
  background: transparent;
  transition: background 180ms ease, transform 180ms ease;
}

.nav-actions > a:hover,
.enquire-menu button:hover {
  background: rgba(255, 255, 255, 0.14);
  transform: translateY(-1px);
}

@media (min-width: 768px) {
  .nav-actions > a,
  .enquire-menu button,
  .menu-button {
    font-size: 1rem;
  }

  .nav-actions > a,
  .enquire-menu button {
    padding: 0.72rem 1.45rem;
  }
}

.enquire-menu {
  position: relative;
}

.enquire-menu__panel {
  position: absolute;
  top: calc(100% + 0.65rem);
  left: 50%;
  min-width: 190px;
  padding: 0.65rem;
  border-radius: var(--radius);
  background: #fff;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -8px);
  transition: opacity 180ms ease, transform 180ms ease;
}

.enquire-menu:hover .enquire-menu__panel,
.enquire-menu:focus-within .enquire-menu__panel {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.enquire-menu__panel a {
  display: block;
  border-radius: 6px;
  padding: 0.65rem 0.75rem;
  color: var(--ink);
  font-weight: 700;
}

.enquire-menu__panel a:hover {
  background: rgba(164, 7, 32, 0.08);
  color: var(--red);
}

.menu-toggle {
  display: none;
}

.menu-button {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  min-height: 42px;
  cursor: pointer;
}

.menu-button i,
.menu-button i::before,
.menu-button i::after {
  display: block;
  width: 24px;
  height: 2px;
  border-radius: 999px;
  background: #fff;
  content: "";
  transition: transform 180ms ease, opacity 180ms ease;
}

.menu-button i {
  position: relative;
}

.menu-button i::before,
.menu-button i::after {
  position: absolute;
  left: 0;
}

.menu-button i::before {
  top: -7px;
}

.menu-button i::after {
  top: 7px;
}

.mega-menu {
  position: absolute;
  left: 0;
  top: calc(100% + 1px);
  display: grid;
  grid-template-columns: repeat(5, auto);
  gap: clamp(1.5rem, 4vw, 4rem);
  width: min(100vw - 2rem, 1120px);
  padding: clamp(1.6rem, 3vw, 2.6rem);
  border-radius: 0 0 8px 8px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 28px 54px rgba(0, 0, 0, 0.18);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-12px);
  transition: opacity 180ms ease, transform 180ms ease;
}

.mega-menu h2 {
  margin: 0 0 0.85rem;
  color: var(--blue);
  font-size: 1.44rem;
  text-align: left;
}

.mega-menu a {
  display: block;
  padding-block: 0.42rem;
  color: var(--ink);
  font-size: 1.19rem;
}

.mega-menu a:hover {
  color: var(--red);
}

.menu-toggle:checked ~ .menu-button i {
  background: transparent;
}

.menu-toggle:checked ~ .menu-button i::before {
  top: 0;
  transform: rotate(45deg);
}

.menu-toggle:checked ~ .menu-button i::after {
  top: 0;
  transform: rotate(-45deg);
}

.menu-toggle:checked ~ .mega-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}



.swiper-button-prev {
    color: #fff;
    width: 0rem;
    background: #00000052;
    opacity: 1;
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    width: 3.5rem;
    height: 3.5rem;
    bottom: 2rem;
    top: inherit;
    left: 2rem;
}

.swiper-button-next {
    color: #fff;
    width: 0rem;
    background: #00000052;
    opacity: 1;
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    width: 3.5rem;
    height: 3.5rem;
    bottom: 2rem;
    top: inherit;
    left: 6rem;
    right: inherit;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 10px;
}


.top-right-card {
    position: relative;
    overflow: hidden;
}

.top-right-card img {
    width: 100%;
}


.top-right-card .swiper-button-prev {
    color: #fff;
    width: 0rem;
    background: #00000052;
    opacity: 1;
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    width: 30px;
    height: 30px;
    bottom: 2rem;
    top: inherit;
    left: 2rem;
    transition: 0.3s;
}

.top-right-card .swiper-button-next {
    color: #fff;
    width: 0rem;
    background: #00000052;
    opacity: 1;
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    width: 30px;
    height: 30px;
    bottom: 2rem;
    top: inherit;
    left: 5rem;
    right: inherit;
    transition: 0.8s;

}

.top-right-card .swiper-button-prev:hover,
.top-right-card .swiper-button-next:hover {
    background: #152242;
}

.top-right-card .swiper-button-next:after,
.top-right-card .swiper-button-prev:after {
    font-size: 10;
}

/* --------------------
        Whatsapp
----------------------- */

/* Wrapper */
.whatsapp-wrapper{
    position: fixed;
    right: 75px;
    bottom: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    z-index: 999;
}

/* Tooltip */
.whatsapp-tooltip{
    position: relative;
    background: #fff;
    color: #222;
    padding: 7px 16px;
    border-radius: 10px;
    font-size: 12px;    
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    white-space: nowrap;
}

.whatsapp-tooltip::after{
    content: "";
    position: absolute;
    top: 50%;
    right: -9px;
    transform: translateY(-50%);
    border-width: 10px 0 10px 15px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
}

/* WhatsApp Button */
.whatsapp-float{
    width: 48px;
    height: 48px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 23px;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(0,0,0,0.25);
    
    animation: bounce 3.5s infinite;
    animation-delay: 3s; /* delay between animations */
}

.whatsapp-float:hover{
    color:#fff;
    transform: scale(1.08);
    transition: 0.3s;
}

/* Bounce Animation */
@keyframes bounce {
    0%, 10%, 20%, 50%, 100% {
        transform: translateY(0);
    }

    15% {
        transform: translateY(-14px);
    }

    18% {
        transform: translateY(-7px);
    }
}

/* Tooltip Animation */
@keyframes fadeIn {
    from{
        opacity:0;
        transform: translateX(10px);
    }

    to{
        opacity:1;
        transform: translateX(0);
    }
}

/* Mobile */
@media(max-width:576px){
    .whatsapp-tooltip{
        display:none;
    }
}


/* Container */
.live-image{    
    overflow:hidden;
    position:relative;
    border-radius:24px;    
}

/* Image */
.live-image img{
    width:115%;
    height:115%;
    object-fit:cover;
    /* Ken Burns Animation */
    animation: kenburns 22s ease-in-out infinite alternate;
    transform-origin:center center;
}

/* Cinematic Overlay */
.live-image::after{
    content:"";
    position:absolute;
    inset:0;    
}

/* Ken Burns Effect */
@keyframes kenburns {

    0%{
        transform:
            scale(1)
            translate(0px, 0px);
    }

    25%{
        transform:
            scale(1.06)
            translate(-15px, -8px);
    }

    50%{
        transform:
            scale(1.12)
            translate(12px, 6px);
    }

    75%{
        transform:
            scale(1.08)
            translate(-10px, 10px);
    }

    100%{
        transform:
            scale(1.15)
            translate(18px, -10px);
    }
}

/*-----------------------------
          Lead Form
-----------------------------*/
/* Form Card */
.admission-form label{
    font-size: 12px;
    color: #000;
}

.admission-form{
    z-index: 1000;    
    background:#fff;
    border-radius:4px;
    padding:16px;
    box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

/* Inputs */
.admission-form .form-control,
.admission-form .form-select{
    height:30px;
    border:1px solid #d9d9d9;
    border-radius:4px;
    font-size:12px;
    color:#444;
    box-shadow:none !important;
}

.admission-form .form-control:focus,
.admission-form .form-select:focus{
    border-color:#0d6efd;
}

.admission-form .form-control::placeholder{
    color:#9a9a9a;
}

/* Select background */
.admission-form .form-select{
    background-color:#f5f5f5;
}

/* Phone Row */
.admission-form .phone-group{
    display:flex;
    align-items:center;
    border:1px solid #d9d9d9;
    border-radius:4px;
    overflow:hidden;
    height:30px;
}

.admission-form .country-code{
    width:90px;
    border:none;
    height:100%;
    background:#fff;
    padding-left:14px;
    font-size:12px;
    outline:none;
}

.admission-form .phone-input{
    border:none !important;
    height:100%;
    flex:1;
}

/* Radio Buttons */
.admission-form .form-check-input{
    width:22px;
    height:22px;
    margin-top:1px;
}

.admission-form .form-check-label{
    margin-left:8px;
    font-size:12px;
    color:#444;
}

/* Description */
.admission-form .consent-text{
    font-size:12px;
    line-height:1.7;
    color:#444;
}

/* Button */
.admission-form .submit-btn{
    height:35px;
    background:#3b97f3;
    border:none;
    border-radius:2px;
    font-size:16px;            
}

.admission-form .submit-btn:hover{
    background:#2488ec;
}

 

.contact-details ul li {
    margin-bottom: 3rem;
    display: flex;
    column-gap: 2.9rem;
}

.contact-details ul{
  list-style: none;
}



.mega-menu__blog {
  display: block;
  border-radius: 10px;
  overflow: hidden;
  border: 1.5px solid #edf0f7;
  text-decoration: none;
  transition: box-shadow 200ms ease, transform 200ms ease;
}

.mega-menu__blog:hover {
  box-shadow: 0 10px 30px rgba(6,20,60,0.14);
  transform: translateY(-2px);
}

.mega-menu__blog img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  transition: transform 420ms ease;
}

.mega-menu__blog:hover img {
  transform: scale(1.04);
}

.mega-menu__blog-text {
  padding: 0.75rem 0.85rem 0.85rem;
}

.mega-menu__blog-text p {
  margin: 0 0 0.6rem;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.42;
}

.mega-menu__blog-text span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.78rem;
  font-weight: 800;
  color: var(--blue);
  letter-spacing: 0.03em;
  transition: color 180ms ease, gap 260ms cubic-bezier(0.34,1.56,0.64,1);
}

.mega-menu__blog:hover .mega-menu__blog-text span {
  color: var(--red);
  gap: 0.55rem;
}


/*--------------------
      Gallery
-------------------*/


.gallery-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: 240px;
    gap: 18px;
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    display: block;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transition: transform 0.8s ease;
}

.gallery-item:hover img {
    transform: scale(1.08);
}

.gallery-item::after {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to top,
        rgba(0,0,0,0.3),
        transparent 60%
    );

    opacity: 0;
    transition: 0.4s ease;
}

.gallery-item:hover::after {
    opacity: 1;
}

.gallery-item.large {
    grid-column: span 2;
    grid-row: span 2;
}

.gallery-item.tall {
    grid-row: span 2;
}

.gallery-item.wide {
    grid-column: span 2;
}

/* LightGallery Custom */
.lg-backdrop {
    background: rgba(0,0,0,0.92);
}

.lg-toolbar {
    background: transparent;
}

.lg-thumb-item {
    border-radius: 8px;
    overflow: hidden;
}

/* Responsive */
@media(max-width:991px){

    .gallery-grid{
        grid-template-columns: repeat(3,1fr);
    }

    .gallery-item.large,
    .gallery-item.wide{
        grid-column: span 2;
    }
}

@media(max-width:576px){

    .gallery-grid{
        grid-template-columns: 1fr;
        grid-auto-rows: 250px;
    }

    .gallery-item.large,
    .gallery-item.wide,
    .gallery-item.tall{
        grid-column: span 1;
        grid-row: span 1;
    }
}


/* Red Border */
.is-invalid {
    border: 1px solid #dc3545 !important;
    box-shadow: none !important;
}

/* Optional Smooth Effect */
.form-control,
.form-select {
    transition: 0.3s ease;
}

.db_response{
  color:#0f5132;
  font-size: 12px;
  text-align: center;
}

.newsletter-message.success{    
    color:#0f5132;
    font-size: 12px;    
}

.newsletter-message.error{    
    color:#842029;
    font-size: 12px;
}

.is-invalid{
    border:1px solid #dc3545 !important;
}

/* =====================================
VSS POPUP - ID BASED FINAL VERSION
======================================== */
    @media (max-width: 1024px) {
      #vss-popup-overlay { display:none !important; }
    }

    #vss-popup-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,.75);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9999999999;
    }

    #vss-popup-box{
      width:560px;
      height:70vh;
      background:#fff;
      border-radius:10px;
      display:flex;
      flex-direction:column;
      overflow:hidden;
    }

    #vss-popup-header{
      background:#0d47a1;
      color:#fff;
      padding:18px;
      font-size:22px;
      text-align:center;
      position:relative;
      flex-shrink:0;
    }

    #vss-popup-close{
      position:absolute;
      right:15px;
      top:10px;
      font-size:22px;
      cursor:pointer;
    }

    #vss-popup-body{
      flex:1;
      overflow-y:auto;
      padding:15px 20px;
    }

    /* Force LeadSquared iframe to behave */
    #vss-popup-body iframe{
      width:100% !important;
      min-height:900px !important;
      border:none !important;
    }
        
        /* Intercept VSS buttons */
    .vss-click-overlay {
        position:absolute;
        inset:0;
        z-index:5;
        cursor:pointer;
    }
    .elementor-widget-button {
        position:relative;
    }
