/*----------- Goole Font Link------------- */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
/*==================================== Default Styles ==================================== */

:root{
    --h1_color:#016B9D;
    --h6_color:#004366;
    --nav_color:rgb(21,21,100);
    --orange_color:#E84911;
    --lato: "Lato", sans-serif;
    --icon:#F48829;
    --footer:#003F62;
    --side_bar:rgba(5, 69, 104, 0.94);
}

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
    list-style: none;
}

body{
    font-family: "Poppins", sans-serif;
    width: 100%;
    overflow-x: hidden;
}

/*----Global Tags---- */

h1{
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--h6_color);
}

span{
    font-size: .9rem;
    color: #757373;
}

h6{
    font-size: 1.1rem;
    color: var(--h6_color);
}





.header{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}


nav{
    display: flex;
    flex-direction: row;
    margin-top: 50px;
    width: 100%;
    background-color: #fff;
    justify-content: space-between;
    padding: 1vw 8vw;
    align-items: center;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.15);
}
.scrolled nav{

     display: flex;
     flex-direction: row;
     margin-top: 50px;
     width: 100%;
     background-color: #fff;
     justify-content: space-between;
     padding: 1vw 8vw;
     align-items: center;
     box-shadow: 2px 2px 10px rgba(0,0,0,0.15);
    
}
nav img{
    width: 200px;
    cursor: pointer;
}

nav .navigation{
    display: flex;
}

#menu-btn{
    width: 30px;
    height: 30px;
    display: none;
}

#menu-close{
    display: none;
    cursor: pointer;
}

nav .navigation ul{
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

nav .navigation ul li{
    list-style: none;
    margin-left: 30px ;
}

nav .navigation ul li a{
    font-size: 16px;
    color: var(--nav_color);
    font-weight: 500;
    transition: 0.3s ease;
    gap: 9px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;

}
nav .navigation ul li a i{
    color: var(--orange_color);
}
nav .navigation ul li a.active,
nav .navigation ul li a:hover{
    color: var(--h1_color);
}

nav .navigation ul li a.active::after{
    color: var(--orange_color);
    width: 100%;
    bottom: -1px;
}
nav .navigation ul li a:hover:after{
    color: var(--orange_color);
    width: 100%;
    bottom: -1px;
}
/* nav .navigation ul li a.active, */
nav .navigation ul li a:after{
    content: "";
    position: absolute;
    height: 4px;
    width: 0%;
    background-color: var(--orange_color);
    top: 100%;
    left: 0%;
    border-radius: 5px;
    transition: all  0.5s;
    text-decoration: none;
    margin-top: 7px;
}

.top_bar{
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: 50px;
    position: absolute;
    top: 0;
    background-color: transparent;
    padding: 5px 10px;
}
.top_bar h3{
    font-size: 1rem;
    font-weight: 500;
    color: var(--h6_color);
    margin-right: 7px;
    cursor: pointer;
}
.top_bar h3 i{
    margin-right: 5px;
    color: var(--h1_color);
}
/*---------Scroll Navbar --------*/

.scrolled {
    position: fixed;
    left: 0;
    top: 0;
    background-color:#fff;
    transition: 0.9 ease-in;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0,0.2);
    width: 100%;
    scroll-behavior: smooth;
    animation:animate 1.2s ease-in-out;
    z-index: 999;


}


@keyframes animate {
 0% {
        transform: translateY(-100%);
    }
    
}



/*=============================== Home Section  linear-gradient(rgba(9,5,54,0.3),rgba(5,4,46,0.7)), ================================== */

#about-home{
    background-image:linear-gradient(rgba(9,5,54,0.3),rgba(5,4,46,0.7)),url('../images/Front_view-6.JPG');
    width: 100%;
    height: 75vh;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: left;
    padding: 5px 10px;
    padding-top: 60px;

}

#about-home h2{
    color: #fbfdfe;
    font-size: 2.7rem;
    font-weight: 700;
      
}

/* ===== Responsive tweaks for #about-home ===== */

/* For tablets & medium screens */
@media (max-width: 992px) {
  #about-home {
      height: 60vh; /* Slightly reduce height for medium screens */
      padding-top: 40px; /* Adjust top padding */
      text-align: center; /* Center text for better balance */
  }

  #about-home h2 {
      font-size: 2.2rem; /* Reduce heading size */
  }
}

/* For mobile devices */
@media (max-width: 600px) {
  #about-home {
      height: 50vh; /* More compact height for mobile */
      padding: 20px 10px; /* Adjust padding for small screens */
      text-align: center; /* Keep text centered */
  }

  #about-home h2 {
      font-size: 1.8rem; /* Smaller heading on mobile */
  }
}

/* For very small devices */
@media (max-width: 400px) {
  #about-home {
      height: 45vh; /* Tighten up height */
      padding: 15px 5px; /* Minimal padding */
  }

  #about-home h2 {
      font-size: 1.5rem; /* Scaled down heading */
  }
}


/*===============================header========================*/
.dept-header {
    background-color: #f4f7fb;
    padding: 60px 20px 40px;
    text-align: center;
    border-bottom: 1px solid #dcdcdc;
  }
  
  .dept-header .container {
    max-width: 800px;
    margin: 0 auto;
  }
  
  .dept-header h1 {
    font-size: 36px;
    font-weight: bold;
    color: var(--h6_color); /* Cambridge Navy Blue */
    margin-bottom: 10px;
  }
  
  .dept-header .underline {
    width: 60px;
    height: 2px;
    background-color: var(--h6_color);
    border: none;
    margin: 0 auto 20px;
  }
  
  .dept-header p {
    font-size: 18px;
    color: #333;
    margin: 0;
  }
  
  /* 📱 Tablets & small desktops (width up to 992px) */
@media (max-width: 992px) {
  /* Reduce heading size for better fit on tablets */
  .dept-header h1 {
    font-size: 2.2rem;
  }

  /* Keep paragraph justified but slightly smaller font */
  .dept-header p {
    font-size: 1.05rem;
    text-align: justify; /* <-- Ensures text stays justified */
  }
}

/* 📱 Large mobiles & small tablets (width up to 768px) */
@media (max-width: 768px) {
  /* Decrease padding so section doesn't look too bulky */
  .dept-header {
    padding: 40px 15px 30px;
  }

  /* Reduce heading size further for mobile view */
  .dept-header h1 {
    font-size: 1.8rem;
  }

  /* Adjust paragraph font size, still justified */
  .dept-header p {
    font-size: 1rem;
    text-align: justify; /* <-- Keep justified alignment */
  }
}

/* 📱 Small mobiles (width up to 480px) */
@media (max-width: 480px) {
  /* Further reduce heading size for small screens */
  .dept-header h1 {
    font-size: 1.5rem;
  }

  /* Paragraph font shrinks slightly but remains justified */
  .dept-header p {
    font-size: 0.95rem;
    text-align: justify; /* <-- Always justified on small screens too */
  }
}

  
/*=============================== Abouts  Section  ================================== */


#about-container{
    display: flex;
    align-items: center;
    padding-left: 8vw;
    padding-right: 8vw;
}
#about-container .about-img {
  width: 60%;

}

#about-container .about-img  img{

 width: 100%;
 height: 80vh;
 background-size: cover;
 background-position: center;
 padding-right: 60px;
 border-radius: 5px;

}

#about-container .about-text {
    width: 60%;
}

#about-container .about-text h2{
    color: var(--h1_color);
    padding-bottom: 15px;
}


#about-container .about-text p{
    padding-bottom: 15px;
    font-weight: 300;
}


#about-container .about-text .about-fe{
    display: flex;
    justify-content: space-between;
    align-items: flex-start; 
    padding: 10px;
}

#about-container .about-text .about-fe img{
   width: 100px;
   height: 100px;
   background-size: cover;
   background-position: center;
   margin-right: 20px;
   border-radius: 5px;
}

#about-container .about-text .about-fe .fe-text{
    width: 90%;

}
#about-container .about-text .about-fe .fe-text h5{
  color: var(--h6_color);
}

#trust{
    text-align: justify;
    padding: 8vw 8vw 2vw 8vw;
}

#trust h1{
    color: var(--h1_color);
}
#trust .Company-container{
    text-align: justify;
    margin-top: 50px;
    padding-bottom: 15px;
}
#trust .Company-container h2{
 margin-bottom: 10px;
 color: var(--h6_color);
 
}



#trust .Our_Mission{
  margin-top: 10px;
}

#trust .Our_vision{
    margin-top: 10px;
}

#trust .services{
    margin-top: 10px;
}
#trust .services li{
  margin-left: 20px;
  margin: 8px;
  padding-left:10px ;
}
#trust .services li span{
    margin:0 10px;
    font-size:1rem;
    color: #000;
    font-weight: 500;
}


/*==================================Dept Hightlight sec==============================*/
.dept-highlights {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
    padding: 40px 20px;
    max-width: 1200px;
    margin: 0 auto;
  }
  
  .highlight {
    display: flex;
    background-color: #f0f0f0;
    border-radius: 8px;
    align-items: flex-start;
    gap: 15px;
  }
  
  .number {
    font-size: 28px;
    color: var(--h6_color);
    font-weight: bold;
    background: #f0f0f0;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .text h3 {
    font-size: 18px;
    color: var(--h6_color);
    margin-bottom: 5px;
  }
  
  .text p {
    font-size: 14px;
    color: #444;
    line-height: 1.6;
  }
  
/* 📱 Tablets & small desktops (screen width up to 992px) */
@media (max-width: 992px) {
  .dept-highlights {
    grid-template-columns: 1fr 1fr; /* Show 2 columns instead of 3 */
    gap: 20px;
    padding: 30px 15px; /* Slightly reduce padding */
  }

  .text p {
    font-size: 13.5px;
    text-align: justify; /* Keep paragraph text justified */
  }
}

/* 📱 Large mobiles & small tablets (screen width up to 768px) */
@media (max-width: 768px) {
  .dept-highlights {
    grid-template-columns: 1fr; /* Stack all in one column */
    padding: 25px 10px; /* Reduce padding for narrow screens */
  }

  .highlight {
    flex-direction: row;
    gap: 12px;
  }

  .number {
    width: 45px;
    height: 45px;
    font-size: 24px;
  }

  .text h3 {
    font-size: 17px;
  }

  .text p {
    font-size: 13px;
    text-align: justify; /* Ensure justify still applies */
  }
}

/* 📱 Small mobiles (screen width up to 480px) */
@media (max-width: 480px) {
  .dept-highlights {
    padding: 20px 8px;
    gap: 15px;
  }

  .highlight {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 10px;
  }

  .number {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }

  .text h3 {
    font-size: 16px;
  }

  .text p {
    font-size: 12.5px;
    text-align: justify; /* Always justified, even on small screens */
  }
}

/*===============================Show case section =================================================*/
.dept-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    padding: 40px 20px;
    align-items: start;
  }
  
  .dept-image img {
    width: 100%;
    height: 700px;
    border-radius: 10px;
    object-fit: cover;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
  }
  
  .faculty-list h2 {
    font-size: 24px;
    margin-bottom: 10px;
    color: #01547c;
  }
  
  .faculty-list h3 {
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: bold;
  }
  
  .faculty-member {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    transition: transform 0.2s ease, background-color 0.2s ease;
    padding: 10px;
    border-radius: 10px;
  }
  
  .faculty-member:hover {
    background-color: #f0f8ff;
    transform: translateY(-2px);
  }
  
  .faculty-member img {
    width: 90px;
    height: 90px;
    border-radius: 10px;
    object-fit: cover;
    border: 2px solid #ccc;
  }
  
  .faculty-member strong {
    color: #01547c;
    font-size: 16px;
  }
  
  .faculty-member span {
    font-size: 14px;
    color: #444;
  }
  
/* 📱 Tablets & small desktops (screen width up to 992px) */
@media (max-width: 992px) {
  .dept-section {
    grid-template-columns: 1fr; /* Stack image and faculty list vertically */
    gap: 30px; /* Reduce gap between items */
    padding: 30px 15px; /* Less padding on sides */
  }

  .dept-image img {
    height: 500px; /* Reduce image height for tablets */
  }

  .faculty-list h2 {
    font-size: 22px; /* Slightly smaller heading */
    text-align: center;

  }

  .faculty-list h3 {
    font-size: 18px;
  }

  .faculty-member strong {
    font-size: 15px;
    text-align: center;

  }

  .faculty-member span {
    font-size: 13.5px;
    text-align: justify; /* Keep descriptions justified */
  }
}

/* 📱 Large mobiles & small tablets (screen width up to 768px) */
@media (max-width: 768px) {
  .dept-section {
    padding: 25px 10px;
    gap: 25px;
  }

  .dept-image img {
    height: 400px; /* Further reduce image height */
  }

  .faculty-list h2 {
    font-size: 20px;
    text-align: center;
  }

  .faculty-list h3 {
    font-size: 17px;
    text-align: center;
  }

  .faculty-member img {
    width: 75px;
    height: 75px;
  }

  .faculty-member strong {
    font-size: 14.5px;
  }

  .faculty-member span {
    font-size: 13px;
    text-align: justify; /* Still justified on mobile */
  }
}

/* 📱 Small mobiles (screen width up to 480px) */
@media (max-width: 480px) {
  .dept-section {
    padding: 20px 8px;
    gap: 20px;
  }

  .dept-image img {
    height: 300px; /* Optimize image height for small screens */
  }

  .faculty-member {
    flex-direction: column; /* Stack image & text vertically */
    align-items: center;
    text-align: center;
  }

  .faculty-member img {
    width: 70px;
    height: 70px;
  }

  .faculty-member strong {
    font-size: 14px;
  }

  .faculty-member span {
    font-size: 12.5px;
    text-align: justify; /* Always justified text */
  }
}

  
  
/*===============================Company-container Course Section  ================================== */

.if{
    text-align: center;
}
#counters{
    width: 100%;
    height: 60vh;
    background-color: var(--side_bar);
    margin-bottom: 20px;

}
/* .counters{
    padding: 8vw 8vw 2vw 8vw;
} */
.counters_box{
     display: flex;
     flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    /* padding: 8vw 8vw 2vw 8vw; */
    width: 100%;
    height: 60vh;
    background-color: var(--side_bar);
    margin-bottom: 20px;
    /* background-image:url('../images/bg-01.jpg'); */
    background-image: linear-gradient(rgba(99,112,168,0.5),rgba(81,91,233,0.5)),url("../images/Back_View-5.JPG");

    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

}

.counters_box .counter{
    text-align: center;
    padding: 13px 33px;
    background: rgba(255,225,225,0.25);
    backdrop-filter: blur(4px);
    box-shadow: 0 8px 32px 0 rgba(31,38,135,0.37);
    border-radius: 5px;
    margin: 0 5px 10px 5px;
    width: 280px;
    height: 100px;
    /* display: flex; */
    justify-content: center;
    align-items: center;
}

.counters_box .counter p{
    font-size: 1.5rem;
    font-weight: 600;
    margin-right: 8px;
    color: var(--icon);
    
}

.counters_box .counter h3{
    font-size: 1.2rem;
    font-weight: 600;
    color: #fff;
    
}
.counters_box .counter p span {
    font-size: 1.8rem;
    font-weight: 700;
    margin-right: 5px;
    color:var(--icon) ;
    text-shadow: 8px 8px 32px 8px rgba(0,0,0,0.37);
    .image-container {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-row-gap: 30px;
        gap: 20ppx;
        margin: 20px;
    }
    
  
}

/* === Counters Section Responsive Styles === */

/* Tablets (768px – 1023px) */
@media (max-width: 1023px) {
  #counters,
  .counters_box {
    height: auto;
    padding: 40px 20px;
  }

  .counters_box .counter {
    width: 40%;
    margin: 10px;
    height: 100px;
  }

  .counters_box .counter p {
    font-size: 1.3rem;
  }

  .counters_box .counter h3 {
    font-size: 1.1rem;
  }
}

/* Mobiles (≤767px) */
@media (max-width: 767px) {
  #counters,
  .counters_box {
    height: auto;
    padding: 30px 15px;
    flex-direction: column;
  }

  .counters_box .counter {
    width: 90%;
    height: auto;
    padding: 15px 20px;
    margin: 12px auto;
  }

  .counters_box .counter p {
    font-size: 1.2rem;
  }

  .counters_box .counter p span {
    font-size: 1.5rem;
  }

  .counters_box .counter h3 {
    font-size: 1rem;
  }
}

/*================================== All department about to finish section ======================================*/
#cs-department {
    padding: 40px;
    background-color: #f4f7fb;
  }
  

  .cs-container {
    max-width: 1400px;
    text-align: justify;
  }
 .cs-container li{
  color: #333;
  padding-left: 1.5rem;     /* ✅ Space for bullets */
  padding-top: 8px;
  margin: 20px;
  line-height: 1.7;         /* ✅ Better readability */
  list-style-type: disc;
  list-style-position: outside;
  font-size: 16px;
  word-break: break-word;   /* ✅ Avoid long words breaking layout */
}
.cs-container span{
    margin:0 10px;
    font-size:1rem;
    color: #000;
    font-weight: 500;
}

  #cs-department h2 {
    font-size: 32px;
    color: var(--h6_color);
    margin-bottom: 20px;
  }
  
  #cs-department h3 {
    margin-top: 30px;
    color: var(--h6_color);
    font-size: 28px;
  }
  
  #cs-department p {
    padding: 8px;
    font-size: 16px;
    color: black;
    line-height: 1.6;
  }

  
  /* Responsive Enhancements for Tablets */
  @media (max-width: 1023px) {
    .cs-container ul {
      font-size: 15px;
      padding-left: 1.6rem;
      line-height: 1.8;
    }
  }
  
  /* Responsive Enhancements for Mobiles */
  @media (max-width: 767px) {
    .cs-container ul {
      font-size: 14px;
      padding-left: 1.5rem;
      line-height: 1.9;
      margin-left: 0;          /* ✅ Avoid nested indent issues */
      list-style-position: outside;
    }
  
    .cs-container ul li {
      margin-bottom: 10px;     /* ✅ Space between items for clarity */
      text-align: start;
    }
  }
  
  .gallery {
    display: grid;
    padding: 30px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
  }
  
  .gallery-item {
    background-color: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
  }
  
  .gallery-item:hover {
    transform: scale(1.03);
  }
  
  .gallery-item img {
    width: 100%;
    height: 180px;
    object-fit: cover;
  }
  
  .caption {
    padding: 15px;
    font-size: 1rem;
    text-align: center;
    font-weight: 500;
    color: #333;
  }
  
  .cs-gallery img:hover {
    transform: scale(1.05);
  }
    
  .cs-split-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    background-color: var(--footer);
    padding: 60px 40px;
    margin-bottom: 40px;
    justify-content: center;
  }
  
  .cs-text {
    flex: 1 1 600px;
    background-color: #fff;
    padding: 40px;
    text-align: justify;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  }
  
  .cs-image {
    flex: 1 1 400px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .cs-image img {
    width: 100%;
    max-width: 400px;
    border-radius: 16px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    object-fit: cover;
  }
  

  /* === Responsive Media Queries === */

/* Tablets (768px to 1023px) */
@media (max-width: 1023px) {
  #cs-department {
    padding: 30px 20px;
  }

  .cs-container span {
    font-size: 0.95rem;
  }

  #cs-department h2 {
    font-size: 28px;
  }

  #cs-department h3 {
    font-size: 24px;
  }

  #cs-department p {
    font-size: 15px;
  }


  .cs-split-wrapper {
    flex-direction: column;
    padding: 40px 20px;
    gap: 20px;
  }

  .cs-text,
  .cs-image {
    flex: 1 1 100%;
    max-width: 100%;
  }

  .cs-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
  }

  .gallery-item {
    height: auto;
  }

  .gallery-item img {
    width: 100%;
    height: 100%;
    max-height: 180px;
    object-fit: cover; /* ✅ Scales and crops nicely */
    display: block;
  }
}

/* Mobile (767px and below) */
@media (max-width: 767px) {
  #cs-department {
    padding: 20px 15px;
  }

  .gallery {
    padding: 20px 10px;
    gap: 15px;
  }

  .gallery-item {
    height: auto; /* ✅ Let it grow naturally */
    overflow: hidden;
  }

  .gallery-item img {
    width: 100%;
    height: 100%;
    max-height: 160px;
    object-fit: cover; /* ✅ Keeps the image nicely cropped */
    display: block;
  }

  .caption {
    font-size: 0.95rem;
    padding: 10px;
  }

  #cs-department h2 {
    font-size: 24px;
    text-align: center;
  }

  #cs-department h3 {
    font-size: 20px;
  }

  #cs-department p {
    font-size: 14px;
  }

  .cs-split-wrapper {
    flex-direction: column;
    padding: 30px 15px;
  }

  .cs-text {
    padding: 20px;
  }

  .cs-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 12px;
    display: block;
  }
}

/*==============================officer highlights for sports=====================================*/
.officer-highlight {
  background: linear-gradient(135deg, #004080, #0073b1);
  color: #fff;
  padding: 3rem 1rem;
  border-radius: 12px;
  margin: 2rem auto;
  max-width: 1100px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.officer-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
}

.officer-image img {
  width: 220px;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 0 12px rgba(255,255,255,0.2);
  object-fit: cover;
}

.officer-details {
  flex: 1;
  text-align: justify;

}

.officer-details h2 {
  font-size: 2rem;
  margin-bottom: 0.5rem;
  color: #ffdd57;
}

.officer-details h3 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

.officer-details p {
  font-size: 1.1rem;
  line-height: 1.7;
  margin-bottom: 1rem;
}

/* Tablet screens (max-width: 992px) */
@media (max-width: 992px) {
  .officer-highlight {
    padding: 2.5rem 1rem; /* Slightly smaller padding */
    max-width: 90%;       /* Responsive width */
  }

  .officer-container {
    flex-direction: column; /* Stack image & details */
    gap: 1.5rem;
  }

  .officer-image img {
    width: 100%;       /* Full width on tablet */
    max-width: 300px;  /* Limit max width */
    height: auto;
  }

  .officer-details {
    text-align: justify; /* Force justified text */
  }

  .officer-details h2 {
    font-size: 1.8rem;
  }

  .officer-details h3 {
    font-size: 1.3rem;
  }

  .officer-details p {
    font-size: 1rem;
    line-height: 1.6;
  }
}

/* Mobile screens (max-width: 768px) */
@media (max-width: 768px) {
  .officer-highlight {
    padding: 2rem 0.8rem;
    max-width: 95%;
  }

  .officer-image img {
    max-width: 100%;
  }

  .officer-details h2 {
    font-size: 1.6rem;
    text-align: center;
  }

  .officer-details h3,h4 {
    font-size: 1.1rem;
    text-align: center;
  }

  .officer-details p {
    font-size: 0.95rem;
    line-height: 1.5;
  }
}

/* Small mobile screens (max-width: 480px) */
@media (max-width: 480px) {
  .officer-highlight {
    padding: 1.5rem 0.6rem;
    max-width: 100%;
    margin: 1.5rem auto;
  }

  .officer-details h2 {
    font-size: 1.4rem;
  }

  .officer-details h3 {
    font-size: 1rem;
  }

  .officer-details p {
    font-size: 0.9rem;
    line-height: 1.4;
  }
}


/*==============================Header for sports,ncc,nss================*/

.pe-department-intro {
  background: #f0f6ff;
  padding: 4rem 1rem;
  text-align: center;
  border-bottom: 3px solid #004080;
}

.intro-content {
  max-width: 900px;
  margin: auto;
}

.pe-department-intro h1 {
  color: #004080;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

.pe-department-intro p {
  font-size: 1.1rem;
  color: #333;
  margin: 0.8rem 0;
  line-height: 1.7;
}

/* ✅ Tablet Screens (up to 992px) */
@media (max-width: 992px) {
  .pe-department-intro {
    padding: 3rem 1rem; /* Reduce padding for tablets */
  }

  .pe-department-intro h1 {
    font-size: 2rem; /* Slightly smaller heading */
  }

  .pe-department-intro p {
    font-size: 1rem;
    text-align: justify; /* Force justify */
  }
}

/* ✅ Mobile Screens (up to 768px) */
@media (max-width: 768px) {
  .pe-department-intro {
    padding: 2.5rem 0.8rem; /* Compact padding for mobiles */
  }

  .pe-department-intro h1 {
    font-size: 1.8rem;
  }

  .pe-department-intro p {
    font-size: 0.95rem;
    text-align: justify;
  }

  .intro-content {
    padding: 0 10px; /* Add inner padding for content */
  }
}

/* ✅ Small Mobile Screens (up to 480px) */
@media (max-width: 480px) {
  .pe-department-intro {
    padding: 2rem 0.5rem;
  }

  .pe-department-intro h1 {
    font-size: 1.5rem;
  }

  .pe-department-intro p {
    font-size: 0.9rem;
    text-align: justify;
  }

  .intro-content {
    padding: 0 8px;
  }
}


/*============================= Magazines section =================================== */

.magazine-section {
  padding: 20px;
  background: #f7f7f7;
  text-align: center;
}

.magazine-section h2 {
  font-size: 1.6rem;
  margin-bottom: 15px;
}

.magazine-carousel {
  position: relative;
  max-width: 100%;
  overflow: hidden;
}

.magazine-track {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 10px 5px;
}

.magazine-card {
  flex: 0 0 calc(20% - 10px); /* 5 visible cards on desktop */
}

.magazine-card img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}

.magazine-card h3 {
  font-size: 0.9rem;
  margin: 6px 0;
}

.download-btn {
  display: inline-block;
  padding: 4px 8px;
  font-size: 0.8rem;
  background: #007BFF;
  color: white;
  border-radius: 4px;
  text-decoration: none;
}

.scroll-btn {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.3);
  color: #fff;
  border: none;
  font-size: 20px;
  padding: 6px 10px;
  cursor: pointer;
  border-radius: 50%;
}

.scroll-btn.left { left: 0; }
.scroll-btn.right { right: 0; }

/* Tablet screens (up to 992px) */
@media (max-width: 992px) {
  .magazine-section {
    padding: 15px 10px;
  }

  .magazine-section h2 {
    font-size: 1.4rem;
  }

  .magazine-card {
    flex: 0 0 calc(25% - 10px); /* 4 visible cards on tablet */
  }

  .magazine-card h3 {
    font-size: 0.85rem;
    margin: 4px 0;
    text-align: justify; /* If you have descriptions, justify here */
  }

  .download-btn {
    font-size: 0.75rem;
    padding: 3px 7px;
  }

  .scroll-btn {
    font-size: 18px;
    padding: 5px 8px;
  }
}

/* Mobile screens (up to 768px) */
@media (max-width: 768px) {
  .magazine-section {
    padding: 12px 8px;
  }

  .magazine-section h2 {
    font-size: 1.2rem;
  }

  .magazine-track {
    gap: 8px;
    padding: 8px 4px;
  }

  .magazine-card {
    flex: 0 0 calc(50% - 8px); /* 2 visible cards on mobile */
  }

  .magazine-card h3 {
    font-size: 0.8rem;
    margin: 3px 0;
    text-align: justify;
  }

  .download-btn {
    font-size: 0.7rem;
    padding: 3px 6px;
  }

  .scroll-btn {
    font-size: 16px;
    padding: 4px 7px;
  }
}

/* Small mobile screens (up to 480px) */
@media (max-width: 480px) {
  .magazine-section {
    padding: 10px 6px;
  }

  .magazine-section h2 {
    font-size: 1rem;
  }

  .magazine-track {
    gap: 6px;
    padding: 6px 3px;
  }

  .magazine-card {
    width: 100px;
    padding: 6px;
  }

  .magazine-card h3 {
    font-size: 0.75rem;
    margin: 2px 0;
    text-align: justify;
  }

  .download-btn {
    font-size: 0.65rem;
    padding: 2px 5px;
  }

  .scroll-btn {
    font-size: 14px;
    padding: 3px 6px;
  }
}

/*==============================  Librarian section ================================== */

.librarian-showcase {
  background-color: #f7f7f7;
  padding: 40px 20px;
  border-top: 1px solid #ddd;
}

.librarian-container {
  max-width: 800px;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 20px;
}

.librarian-photo {
  width: 300px;
  max-width: 100%;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.librarian-text {
  width: 100%;
}

.librarian-text h2 {
  margin-bottom: 10px;
  font-size: 28px;
  color: #333;
}

.librarian-text h3 {
  margin-bottom: 10px;
  font-size: 20px;
  color: #555;
}

.librarian-text p {
  font-size: 16px;
  color: #444;
  line-height: 1.6;
  text-align: justify;
}

.quote {
  margin-top: 15px;
  font-style: italic;
  color: #888;
  border-left: 4px solid #ccc;
  padding-left: 12px;
  text-align: justify;
}

/* Responsive (just keeping it tidy but same structure) */
@media (max-width: 768px) {
  .quote {
    border-left: none;
    border-top: 4px solid #ccc;
    padding-left: 0;
    padding-top: 10px;
  }
}


/*============================== showcase section fo pet ============================== */
.card-section {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  padding: 2rem;
  background-color: #f3f7fa;
}

.card {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  animation: fadeInUp 1s ease forwards;
  opacity: 0;
}

.card img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}


.card-content {
  padding: 1.5rem;
  text-align: center;
}

.card-content h3 {
  font-size: 1.3rem;
  margin-bottom: 0.8rem;
  color: #223a5e;
}

.card-content p {
  font-size: 1rem;
  text-align: justify;
  color: #5f7c8a;
}

/* Hover Effect */
.card:hover {
  transform: translateY(-10px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

/* Fade-in animation */
@keyframes fadeInUp {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Responsive tweak for small screens (keep this part for mobile) */
@media (max-width: 992px) {
  .card-section {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
}

/*=============================== Footer Section  ================================== */
/* footer section will be linked in contact.css in all departments */

/*=============================== @media Query Section  ================================== */

/*-------- Max-Width:769--------- */
@media (max-width:769px){
    body{
        width: 100%;
    }
   /* -----Header------- */

   nav{
    padding: 15px 20px;
    width: 100%;
    margin-top: 0;
   z-index: 999;
   overflow: hidden;
   }
   nav img{
    width: 160px;
   }
   #menu-btn{
    display: initial;  
    z-index: 999;  

   }
   #menu-close{
     display:initial;
     font-size: 1.6rem;
     color: var(--icon);
     padding: 30px 0px 20px 20px;
     font-weight: 500;
     cursor: pointer;
    z-index: 999;
         z-index: 999;  

   }
   nav .navigation ul{
    position: absolute;
    top: 0;
    /* right: -300px; */
    right: 0;
    display: none;
    width: 220px;
    height: 100vh;
    background: var(--side_bar);
    backdrop-filter: blur(4.5px);
    border: 1px solid rgba(255,225,225,0.25);
    /* display: flex; */
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    scroll-behavior: smooth;
    animation:Sidebar 0.5s ease-in;
}
 
@keyframes Sidebar {
 0% {
        transform: translateX(100%);
    }
    
}


   nav .navigation ul.active{
     /* right: 0; */
     display: flex;
   }

    nav .navigation ul li{
    padding: 20px 0 20px 40px;
    margin-left: 0;
   }
    nav .navigation ul li a{
    color: #fff;
   }
 #Contect_Info{
    display: block;
   }
   .top_bar h3{
    display: none;
}

  .scrolled nav{
    margin-top: 0;
    z-index: 999;
   }


 /* ------Home------- */
 #home h2{
    color: #fff;
    font-size: 2rem;
    width: 60%;
    letter-spacing: 1px;
   }
   #home p{
    color: #fff;
    font-size: 1rem;
    letter-spacing: 1px;
    width: 100%;
    line-height: 20px;
    margin-top: 7px;
}
   


    
     } 
    footer .copyright{
       text-align: center;
       margin-bottom: 10px;
       display: flex;
       justify-content: center;
       align-items: center;

 }
    footer .copyright .pro-links{
       margin-top: 15px;
       text-align: center;
 }


/*-------- Max-Width:980--------- */

@media (max-width:980px){
    body{
        width: 100%;
    }
    nav img{
        width: 180px;
       }
   
   /* -----Header------- */
    nav{
    padding: 15px 30px;
    width: 100%;
    /* margin-top: 0; */
    z-index: 999;
   }   
     #menu-btn{
     display: initial;  
     z-index: 999;  
         
    }
     #menu-close{
      display:initial;
      font-size: 1.6rem;
      color: var(--icon);
      padding: 30px 0px 20px 20px;
      font-weight: 500;
      cursor: pointer;
      z-index: 999;  
         
       }
       nav .navigation ul{
        position: absolute;
        top: 0;
        /* right: -300px; */
        right: 0;
        width: 220px;
        height: 100vh;
        background: var(--side_bar);
        backdrop-filter: blur(4.5px);
        border: 1px solid rgba(255,225,225,0.25);
        display: none;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        scroll-behavior: smooth;
        animation:Sidebar 0.5s ease-in;
       }
        
       @keyframes Sidebar {
        0% {
               transform: translateX(100%);
           }
           
       }

       nav .navigation ul.active{
         right: 0;
         
        display: flex;
       }
       nav .navigation ul li{
        padding: 20px 0 20px 40px;
        margin-left: 0;
       }


       nav .navigation ul li a{
        color: #fff;
       }
       nav .navigation ul #Contect_Info{
       display: block;
       }
      
      .scrolled nav{
        margin-top: 50;
        top: 0;
        z-index: 9999;

        }

   /* ------Home------- */

    #home h2{
       color: #fff;
       font-size: 1.8rem;
       width: 60%;
       letter-spacing: 0.5;
   }
   #home p{
       color: #fff;
       font-size: 0.9rem;
       letter-spacing: 1px;
       width: 100%;
       line-height: 20px;
       margin-top: 7px;
}
   
 



/* Footer */

footer .copyright{
   text-align: center;
   margin-bottom: 10px;
   display: flex;
   justify-content: center;
   align-items: center;
}
footer .copyright .pro-links{
   margin-top: 15px;
   text-align: center;
}
} 

/*-------- Max-Width:1080--------- */

@media (max-width:1080px){
    nav .navigation ul li{
        list-style: none;
        margin-left: 15px ;
    }    
}

/*-------- Max-Width:475px--------- */


@media (max-width:475px){
    #registration {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
   


    .foot{
        flex-direction: column;
        text-align: center;
        align-items: center;
      }
      .footer-col{
        width: 100%;
      }
      .copyright{
        width: 100%;
      }
        .counters_box{
            height: auto;
        }
        
        #counters{
          height: auto;
        
        }
    #about-container{
        flex-direction: column-reverse;
    }
#about-container .about-img {
 width: 100%;
}
    #about-container .about-img img {
       width: 100%;
       height: auto;
        padding-right: 0px;
    }

    #about-container .about-text  {
     width: 100%;
     padding-bottom: 20px;
    }
}

@media (max-width:407px){

    #home .btn {
        display: flex;
        /* flex-wrap: wrap; */
    }
.counters_box{
    height: auto;
}


}

