html,
body{
    overflow-x: hidden;
}
    :root {
      --primary: #0b1f33;
      --gold: #d4a02b;
      --gold-light: #f5d98f;
      --gray-bg: #f4f6fa;
    }
    * { font-family: 'Inter', sans-serif; }
    body { background: #ffffff; color: #1a1a2e; overflow-x: hidden;  overflow-y: hidden;}
    .bg-primary-dark { background-color: var(--primary); }
    .bg-soft { background-color: var(--gray-bg); }
    .text-gold { color: var(--gold); }
    .text-gold-light { color: var(light); }
    
    /* Buttons */
    .btn-gold {
      background: var(--gold);
      color: #fff;
      font-weight: 600;
      padding: 0.7rem 2.2rem;
      border-radius: 50px;
      border: none;
      transition: all 0.4s ease;
    }
    .btn-gold:hover {
      background: var(--primary);
      color: #fff;
      transform: translateY(-3px) scale(1.02);
      box-shadow: 0 12px 30px rgba(11, 31, 51, 0.3);
    }
    .btn-outline-gold {
      border: 2px solid var(--gold);
      color: var(--gold);
      font-weight: 600;
      border-radius: 50px;
      padding: 0.7rem 2.2rem;
      background: transparent;
      transition: all 0.4s ease;
    }
    .btn-outline-gold:hover {
      background: var(--gold);
      color: #fff;
      transform: translateY(-3px);
      box-shadow: 0 12px 30px rgba(212, 160, 43, 0.3);
    }
    /****   top bar ***/
    .navbar-brand{
    text-decoration:none;
}

.navbar-logo{
    width:70px;
    height:70px;
    object-fit:contain;
}

.navbar-brand h4{
    font-size:20px;
    color:#08162a;
}

.navbar-brand small{
    font-size:12px;
    letter-spacing:.5px;
}

@media (max-width:991px){

    .navbar-logo{
        width:55px;
        height:55px;
    }

    .navbar-brand h4{
        font-size:22px;
    }

    .navbar-brand small{
        font-size:10px;
    }

}

@media (max-width:576px){

    .navbar-logo{
        width:45px;
        height:45px;
    }

    .navbar-brand h4{
        font-size:15px;
    }

    .navbar-brand small{
        display:none;
    }

}
    /* Section */
    .section-title {
      font-size: 2.4rem;
      font-weight: 800;
      letter-spacing: -0.02em;
    }
    .section-tag {
      display: inline-block;
      background: var(--gold);
      color: #fff;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 1px;
      padding: 0.3rem 1.2rem;
      border-radius: 50px;
      text-transform: uppercase;
    }
    
    /* Cards */
    .glass-card {
      background: rgba(255,255,255,0.9);
      backdrop-filter: blur(8px);
      border: 1px solid rgba(255,255,255,0.3);
      border-radius: 28px;
      padding: 2rem 1.8rem;
      transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
      height: 100%;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.06);
    }
    .glass-card:hover {
      transform: translateY(-10px) scale(1.01);
      border-color: var(--gold);
      box-shadow: 0 25px 60px rgba(212, 160, 43, 0.15);
    }
    /***** hero**/
    .hero-section{
    position:relative;
}

.hero-slide{
    position:relative;
    height:90vh;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.hero-slide-1{
    background:url("../images/banner2.webp") center center/cover;
}

.hero-slide-2{
    background:url("../images/banner5.webp") center center/cover;
}

.hero-slide-3{
    background:url("../images/banner4.webp") center center/cover;
}

.overlay{
    position:absolute;
    inset:0;
    background:rgba(8,22,42,.70);
}

.hero-content{
    min-height:90vh;
    position:relative;
    z-index:2;
}

.hero-tag{
    background:#f4b400;
    color:#08162a;
    padding:4px 18px;
    border-radius:30px;
    font-weight:700;
    display:inline-block;
    margin-bottom:20px;
}

.hero-content h1{
    font-size:50px;
    font-weight:800;
    line-height:1.2;
}

.hero-content h1 span{
    color:#ffc107;
}

.hero-content p{
    font-size:15px;
    margin-top:20px;
    max-width:650px;
    line-height:1.8;
}

.btn-warning{
    padding:8px 35px;
    border-radius:50px;
    font-weight:600;
}

.btn-outline-light{
    padding:8px 35px;
    border-radius:50px;
}

.carousel-control-prev,
.carousel-control-next{
    width:70px;
}

.carousel-indicators button{
    width:12px;
    height:12px;
    border-radius:50%;
}

@media(max-width:991px){

.hero-slide{
    height:75vh;
}

.hero-content{
    min-height:75vh;
}

.hero-content h1{
    font-size:42px;
}

.hero-content p{
    font-size:17px;
}

}

@media(max-width:576px){

.hero-slide{
    height:70vh;
}

.hero-content{
    min-height:70vh;
    text-align: center;
}

.hero-content h1{
    font-size:30px;
}

.hero-content p{
    font-size:15px;
}

.btn-warning,
.btn-outline-light{
    width:50%;
    margin-bottom:15px;
}

}
    /* Carousel 
    .carousel-item {
      min-height: 400px;
      background-size: cover;
      background-position: center;
      border-radius: 24px;
      overflow: hidden;
    }
    .carousel-overlay {
      background: linear-gradient(135deg, rgba(11,31,51,0.85) 0%, rgba(11,31,51,0.4) 100%);
      padding: 4rem 3rem;
      border-radius: 24px;
      min-height: 400px;
      display: flex;
      align-items: center;
    }
    .carousel-control-prev, .carousel-control-next {
      width: 50px;
      height: 50px;
      background: rgba(255,255,255,0.15);
      backdrop-filter: blur(8px);
      border-radius: 50%;
      top: 50%;
      transform: translateY(-50%);
      opacity: 0.8;
      transition: all 0.3s;
    }
    .carousel-control-prev:hover, .carousel-control-next:hover {
      background: var(--gold);
      opacity: 1;
    }
    .carousel-control-prev { left: 20px; }
    .carousel-control-next { right: 20px; }
    .carousel-indicators button {
      width: 12px;
      height: 12px;
      border-radius: 50%;
      border: 2px solid var(--gold);
      background: transparent;
    }
    .carousel-indicators .active {
      background: var(--gold);
    }
    
    .about-section{
    background:#f8f9fa;
}*//

.about-subtitle{
    display:inline-block;
    color:#f26522;
    font-size:15px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:15px;
}

.about-title{
    font-size:42px;
    font-weight:700;
    color:#0b5e3c;
    line-height:1.3;
    margin-bottom:25px;
}

.about-text{
    font-size:17px;
    color:#555;
    line-height:1.9;
    margin-bottom:20px;
}

.about-btn{
    background:#0b5e3c;
    color:#fff;
    padding:12px 30px;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
}

.about-btn:hover{
    background:#f26522;
    color:#fff;
}

.about-image{
    position:relative;
}

.about-image img{
    width:100%;
    border-radius:20px;
    box-shadow:0 20px 45px rgba(0,0,0,.15);
}

@media(max-width:991px){

.about-title{
    font-size:34px;
}

.about-image{
    margin-top:40px;
}

}

@media(max-width:576px){

.about-title{
    font-size:28px;
}

.about-text{
    font-size:16px;
}

}
    /* Stats */
    .stat-number {
      font-size: 2.8rem;
      font-weight: 800;
      color: var(--gold);
      line-height: 1;
    }
    
    /* Testimonial */
    .testimonial-quote {
      font-size: 1.1rem;
      font-weight: 400;
      color: #2d3a4f;
      line-height: 1.7;
    }
    
    /* Footer */
    .footer-link {
      color: #fff;
      text-decoration: none;
      transition: all 0.3s ease;
    }
    .footer-link:hover { color: var(--gold); transform: translateX(5px); }
    .nav-link-custom {
      color: #1a1a2e;
      font-weight: 500;
      padding: 0.5rem 1rem;
      border-radius: 40px;
      transition: all 0.3s ease;
      position: relative;
    }
    .nav-link-custom::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 0;
      height: 2px;
      background: var(--gold);
      transition: all 0.3s ease;
      transform: translateX(-50%);
    }
    .nav-link-custom:hover::after { width: 60%; }
    .nav-link-custom:hover {
      background: transparent;
      color: var(--gold);
    }
    
    /* Floating animation for cards */
    @keyframes float {
      0% { transform: translateY(0px); }
      50% { transform: translateY(-10px); }
      100% { transform: translateY(0px); }
    }
    .float-animation {
      animation: float 4s ease-in-out infinite;
    }
    .float-animation-delay-1 { animation-delay: 0s; }
    .float-animation-delay-2 { animation-delay: 1s; }
    .float-animation-delay-3 { animation-delay: 2s; }
    
    /* Pulse animation for CTA */
    @keyframes pulse-gold {
      0% { box-shadow: 0 0 0 0 rgba(212, 160, 43, 0.4); }
      70% { box-shadow: 0 0 0 20px rgba(212, 160, 43, 0); }
      100% { box-shadow: 0 0 0 0 rgba(212, 160, 43, 0); }
    }
    .pulse-animation {
      animation: pulse-gold 2s infinite;
    }
    
    /* Scroll to top button */
    #scrollTop {
      position: fixed;
      bottom: 30px;
      right: 30px;
      background: var(--gold);
      color: #fff;
      border: none;
      border-radius: 50%;
     /*width: 50px;*/
      height: 50px;
      font-size: 1.2rem;
      transition: all 0.3s ease;
      opacity: 0;
      visibility: hidden;
      z-index: 999;
      box-shadow: 0 8px 25px rgba(212, 160, 43, 0.3);
    }
    #scrollTop.show {
      opacity: 1;
      visibility: visible;
    }
    #scrollTop:hover {
      background: var(--primary);
      transform: translateY(-5px) scale(1.1);
    }
    
    @media (max-width: 768px) {
      .section-title { font-size: 1.8rem; }
      .stat-number { font-size: 2rem; }
      .carousel-item { min-height: 300px; }
      .carousel-overlay { padding: 2rem 1.5rem; min-height: 300px; }
    }


/* Mobile Menu Width */
.offcanvas-end{
    width:300px;
}

.offcanvas-header{
    background:#08162a;
    color:#fff;
}

.offcanvas-body{
    padding:20px;
}

.offcanvas .nav-link{
    padding:12px 0;
    font-size:16px;
    font-weight:600;
    color:#222;
    border-bottom:1px solid #eee;
    transition:.3s;
}

.offcanvas .nav-link:hover{
    color:#d4af37;
    padding-left:8px;
}

.btn-close{
    filter:invert(1);
}

/* Desktop */
@media(min-width:992px){

    .navbar-toggler{
        display:none;
    }

}



    /*****about page css***/

    .about-section{
    background:#f8fafc;
}

.section-subtitle{
    color:#f26522;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    color:#0b5e3c;
    font-size:40px;
    font-weight:700;
    margin:15px 0 20px;
}

.about-text{
    color:#555;
    line-height:1.8;
    margin-bottom:18px;
}

.about-card{
    background:#fff;
    border-radius:10px;
    padding:25px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    height:100%;
}

.about-card h5{
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:15px;
}

.about-card ul{
    margin:0;
    padding-left:18px;
}

.about-card li{
    margin-bottom:10px;
}

.about-box{
    background:#0b5e3c;
    color:#fff;
    padding:40px;
    border-radius:20px;
}

.about-box h3{
    color:#fff;
    margin-bottom:25px;
    font-weight:700;
}

.feature-list{
    list-style:none;
    padding:0;
    margin:0;
}

.feature-list li{
    position:relative;
    padding-left:35px;
    margin-bottom:18px;
    line-height:1.7;
}

.feature-list li::before{
    content:"✔";
    position:absolute;
    left:0;
    color:#ffd54f;
    font-size:18px;
}

.about-tagline{
    margin-top:35px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.25);
}

.about-tagline h4{
    color:#ffd54f;
    font-weight:700;
}

.about-tagline p{
    margin:8px 0 0;
    font-size:18px;
}

@media(max-width:991px){

.section-title{
    font-size:32px;
}

.about-box{
    margin-top:30px;
}

}

@media(max-width:576px){

.section-title{
    font-size:28px;
}

.about-box{
    padding:25px;
}

}

.vision-mission{
    background:#f8f9fa;
}

.section-title{
    font-size:38px;
    font-weight:700;
    color:#0b5e3c;
}

.section-subtitle{
    color:#666;
    max-width:700px;
    margin:auto;
}

.vm-card{
    background:#fff;
    padding:40px 35px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
    border-top:5px solid #0b5e3c;
}

.vm-card:hover{
    transform:translateY(-8px);
}

.vm-icon{
    width:70px;
    height:70px;
    background:#0b5e3c;
    color:#fff;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:28px;
    margin-bottom:20px;
}

.vm-card h3{
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:20px;
}

.vm-card p{
    color:#555;
    line-height:1.8;
}

.vm-card ul{
    margin:0;
    padding-left:20px;
}

.vm-card ul li{
    margin-bottom:12px;
    color:#555;
    line-height:1.7;
}

.vision-card{
    border-top-color:#f26522;
}

.mission-card{
    border-top-color:#0b5e3c;
}

@media(max-width:768px){

.section-title{
    font-size:30px;
}

.vm-card{
    padding:30px 25px;
}

}
    /*****about page css end***/

    /***course**/
    .courses-section{
    background:#f8f9fa;
}

.course-subtitle{
    color:#f26522;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    font-weight:700;
    color:#0b5e3c;
    margin:10px 0;
}

.section-desc{
    max-width:700px;
    margin:auto;
    color:#666;
}

.course-card{
    background:#fff;
    padding:35px;
    border-radius:18px;
    box-shadow:0 12px 30px rgba(0,0,0,.08);
    transition:.35s;
    position:relative;
}

.course-card:hover{
    transform:translateY(-8px);
}

.active-course{
    border-top:5px solid #0b5e3c;
}

.upcoming-course{
    border-top:5px solid #f26522;
}

.course-badge{
    display:inline-block;
    background:#0b5e3c;
    color:#fff;
    padding:6px 16px;
    border-radius:30px;
    font-size:13px;
    margin-bottom:20px;
}

.course-badge.upcoming{
    background:#f26522;
}

.course-card h3{
    font-size:28px;
    font-weight:700;
    color:#0b5e3c;
    margin-bottom:20px;
}

.course-info{
    list-style:none;
    padding:0;
    margin-bottom:20px;
}

.course-info li{
    padding:8px 0;
    border-bottom:1px solid #eee;
}

.course-card p{
    color:#555;
    line-height:1.8;
}

.btn-course{
    background:#0b5e3c;
    color:#fff;
    border-radius:40px;
    padding:10px 28px;
}

.btn-course:hover{
    background:#09472d;
    color:#fff;
}

.btn-outline-course{
    border:2px solid #f26522;
    color:#f26522;
    border-radius:40px;
    padding:10px 28px;
}

.btn-outline-course:hover{
    background:#f26522;
    color:#fff;
}

.fee-table{
    background:#fff;
    padding:35px;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.table thead{
    background:#0b5e3c;
    color:#fff;
}

.table th,
.table td{
    padding:15px;
}

@media(max-width:768px){

.section-title{
    font-size:32px;
}

.course-card{
    padding:25px;
}

.course-card h3{
    font-size:24px;
}

.fee-table{
    padding:20px;
}

}
/** course page css end**/

/****** facilities page css ***/
.facilities-section{
    background:#f8f9fa;
}

.facility-subtitle{
    color:#f26522;
    font-size:15px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    font-weight:700;
    color:#0b5e3c;
    margin:12px 0;
}

.section-description{
    max-width:700px;
    margin:auto;
    color:#666;
}

.facility-card{
    background:#fff;
    padding:35px 25px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.facility-card:hover{
    transform:translateY(-8px);
}

.facility-icon{
    width:80px;
    height:80px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#0b5e3c;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    font-size:32px;
}

.facility-card h5{
    font-size:22px;
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:15px;
}

.facility-card p{
    color:#666;
    line-height:1.7;
    margin:0;
}

@media(max-width:991px){

.section-title{
    font-size:34px;
}

}

@media(max-width:576px){

.section-title{
    font-size:28px;
}

.facility-card{
    padding:30px 20px;
}

.facility-icon{
    width:70px;
    height:70px;
    font-size:28px;
}

}
/**** facilities css end***/

/*** principle page css **/
.principal-section{
    background:#f8f9fa;
}

.section-subtitle{
    color:#f26522;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    font-weight:700;
    color:#0b5e3c;
    margin:10px 0;
}

.section-description{
    color:#666;
    max-width:650px;
    margin:auto;
}

.principal-image img{
    width:100%;
   /* max-width:320px;*/
    border-radius:15px;
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.principal-image h4{
    color:#0b5e3c;
    font-weight:700;
}

.designation{
    color:#f26522;
    font-weight:600;
}

.principal-content{
    background:#fff;
    padding:40px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.principal-content h3{
    color:#0b5e3c;
    margin-bottom:25px;
    font-weight:700;
}

.principal-content p{
    color:#555;
    line-height:1.9;
    text-align:justify;
    margin-bottom:18px;
}

.signature{
    margin-top:35px;
    border-top:2px solid #eee;
    padding-top:20px;
}

.signature h5{
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:5px;
}

.signature span{
    color:#f26522;
    font-weight:600;
}

@media(max-width:991px){

.section-title{
    font-size:34px;
}

.principal-content{
    margin-top:20px;
    padding:30px;
}

}

@media(max-width:576px){

.section-title{
    font-size:28px;
}

.principal-content{
    padding:25px;
}

.principal-content p{
    text-align:left;
}

}

/**end**/

/*** director page css */

.director-section{
    background:#f8f9fa;
}

.section-subtitle{
    color:#f26522;
    font-size:15px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    font-weight:700;
    color:#0b5e3c;
    margin:10px 0;
}

.section-description{
    color:#666;
    max-width:700px;
    margin:auto;
}

.director-image img{
    width:100%;
    /*max-width:320px;*/
    border-radius:18px;
    box-shadow:0 15px 35px rgba(0,0,0,.15);
    border:6px solid #fff;
}

.director-image h4{
    color:#0b5e3c;
    font-weight:700;
}

.designation{
    color:#f26522;
    font-weight:600;
    font-size:17px;
}

.director-content{
    background:#fff;
    padding:45px;
    border-radius:18px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    position:relative;
}

.director-content::before{
    content:"❝";
    position:absolute;
    top:15px;
    right:30px;
    font-size:80px;
    color:#0b5e3c;
    opacity:.08;
    font-family:serif;
}

.director-content h3{
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:25px;
}

.director-content p{
    color:#555;
    line-height:1.9;
    text-align:justify;
    margin-bottom:18px;
}

.signature{
    margin-top:30px;
    padding-top:20px;
    border-top:2px solid #eee;
}

.signature h5{
    color:#0b5e3c;
    font-weight:700;
    margin-bottom:5px;
}

.signature span{
    color:#f26522;
    font-weight:600;
}

@media(max-width:991px){

    .section-title{
        font-size:34px;
    }

    .director-content{
        margin-top:30px;
        padding:30px;
    }

}

@media(max-width:576px){

    .section-title{
        font-size:28px;
    }

    .director-content{
        padding:25px;
    }

    .director-content p{
        text-align:left;
    }

}
/****director end**/
/****contact**/
.contact-section{
    background:#f8f9fa;
}

.contact-subtitle{
    color:#f26522;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title{
    font-size:42px;
    color:#0b5e3c;
    font-weight:700;
}

.section-description{
    color:#666;
    max-width:700px;
    margin:auto;
}

.contact-card{
    background:#fff;
    padding:35px;
    border-radius:18px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
    height:100%;
}

.contact-card:hover{
    transform:translateY(-8px);
}

.contact-icon{
    width:70px;
    height:70px;
    background:#0b5e3c;
    color:#fff;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    margin:0 auto 20px;
    font-size:28px;
}

.contact-card h5{
    color:#0b5e3c;
    margin-bottom:15px;
}

.contact-card a{
    color:#555;
    text-decoration:none;
    word-break:break-word;
}

.contact-form{
    background:#fff;
    padding:40px;
    border-radius:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.contact-form h3{
    color:#0b5e3c;
    margin-bottom:25px;
}

.form-control{
    border-radius:10px;
    padding:12px 15px;
    border:1px solid #ddd;
}

.form-control:focus{
    border-color:#0b5e3c;
    box-shadow:none;
}

.btn-contact{
    background:#0b5e3c;
    color:#fff;
    padding:12px 35px;
    border-radius:50px;
    font-weight:600;
}

.btn-contact:hover{
    background:#f26522;
    color:#fff;
}

.contact-map{
    height:100%;
    min-height:500px;
    overflow:hidden;
    border-radius:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.contact-map iframe{
    width:100%;
    height:100%;
    border:0;
}

@media(max-width:991px){

.section-title{
    font-size:34px;
}

.contact-map{
    min-height:400px;
}

}

@media(max-width:576px){

.section-title{
    font-size:28px;
}

.contact-form{
    padding:25px;
}

.contact-map{
    min-height:300px;
}

}
