 /* Global box sizing */
  * {
    box-sizing: border-box;
  }


  /* Body styling */
  body {
    background-color: #f4f6f8;
    font-family: 'Segoe UI', sans-serif;
    margin: 0;
    padding: 0;
    cursor: default;
}

  .hamburger {
  display: inline-block;
  cursor: pointer;
  margin-left: 90%;
}

.hamburger-text {
  font-size: 1rem;
  color: white;
  letter-spacing: 0.5px;
}

  .hamburger span {
  display: block;
  width: 40px;
  height: 4px; /* Thickness of the line */
  background-color: white;
  margin: 2rem 0;
  border-radius: 1px;
}


  .mobile-header {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  z-index: 1100;
	  background-color: #007acc;
	  padding: 0.5rem;
	  display: flex;
	  justify-content: space-between;
	  align-items: center;
  }
  	
  /* Sidebar - visible on desktop */
  .sidebar {
    background: linear-gradient(to bottom, #005792, #007acc);
    color: white;
    height: 100vh;
    width: clamp(300px, 30%,500px);
    position: fixed;
    top: 0;
    left: 0;
    padding: 5rem 2%; /* spacing inside sidebar */
    padding-bottom:1rem;
    overflow-y: auto;
  }

  .sidebar h4 {
    padding-top: 1rem;
    font-size: clamp(0.9rem, 2.5vw, 1.5rem); /* responsive heading */
    font-weight: 700;
  }

  .sidebar .nav-link {
    font-weight: bold;
    font-size: clamp(0.9rem, 2vw, 1.2rem); /* responsive font */
    color: white;
    margin-bottom: 0.5rem;
    display: block;
  }

  .sidebar .nav-link.active,
  .sidebar .nav-link:hover {
    background-color: #003f67;
    color: white;
    border-radius:1%;
  }

  /* Profile image */
  .profile-img {
    width: 100%;
    max-width: 70%;
    aspect-ratio: 1; /* maintain square shape */
    object-fit: cover;
    border-radius: 5%; /* slightly rounded */
    border: 0.2rem solid white;
    margin-bottom: 0.5rem;
  }

  /* Name/title below profile image */
  .prof-info {
    font-size: clamp(0.9rem, 2.2vw, 1.2rem);
    font-weight: bold;
    margin-top: 0.5rem;
    margin-bottom:0.5rem
  }

  /* Main content area beside sidebar */
  .main-content {
    position: relative;
    padding: 3%;
    margin-left: clamp(300px, 30%,500px); /* matches sidebar width */
    width: calc(100% - clamp(300px, 30%,500px));
    box-sizing: border-box;
  }

  /* Top right logo (e.g., institute logo) */
  .logo-top-right {
    position: absolute;
    top: 1rem;
    right: 2rem;
    width: clamp(60px, 10%, 150px); /* auto scales */
    height: auto;
    z-index: 10;
  }

  /* Fade-in animation for tab content */
  .tab-pane {
    animation: fadeIn 0.3s ease-in;
  }

  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }

  /* Section titles like About, Publications, etc. */
  .section-title {
    font-size: clamp(1.5rem, 4vw, 2.5rem);
    font-weight: 700;
    margin: 2rem 0;
    color: #003f67;
    text-align: center;
  }

  /* Paragraph indentation in About section */
  #about p {
    text-align: justify;
    text-indent: 2em;
  }
  #about{
    padding: clamp(20px, 8%, 100px);
    padding-right: clamp(20px, 10%, 160px);
    padding-top:clamp(2rem, 15%, 12rem);
    font-size: clamp(0.9rem, 2.5vw, 1.1rem);
    line-height: clamp(1rem, 3vw, 1.6rem);
    text-align: justify;
  }

  /* Common section styling */
  #publications,
  #contact,
  #activities,
  #teaching,
  #update,
  #projects {
    padding:clamp(1rem, 5%, 3rem);
    padding-top: clamp(1rem, 10%, 3rem);
    font-size: clamp(0.95rem, 2.5vw, 1.1rem);
    line-height:clamp(1rem, 3vw, 1.6rem);
    text-align: justify;
  }

#chipgallery{  
    padding-top: 2rem;  
  }
  /* Tablet and below (≤800px) */
@media (max-width: 800px) {
  .sidebar {
    position: fixed; /* previously static */
    top: 0;
    left: -100%; /* hide by default */
    width: 50%;
    height: 100vh;
    background-color: #005792;
    z-index: 1200;
    padding: 1.5rem 5%;
    text-align: center;
    transition: left 0.3s ease-in-out;
  }
  

  .sidebar.show {
    left: 0; /* slide in when toggled */
  }

  .main-content {
    margin-left: 0;    
    line-height: 1.2rem;
    width: 100%;
    padding: 1.5rem 1%;
    margin-top:3rem
  }

  .profile-img {
    max-width: 70%;
    margin: 2rem auto 1rem auto;
  }

  .sidebar-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    z-index: 1040;
  }

  .sidebar-overlay.show {
    display: block;
  }

}
@media (min-width: 801px) {
  .hamburger-label,
  .hamburger {
    display: none;
  }
  .mobile-header{
  display: none
  }
}

