/* Responsive tweaks */
@media (max-width: 1100px){
  .section-container{ grid-template-columns: 1fr; }
  .skills-grid{ grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cards{ grid-template-columns: repeat(2,minmax(0,1fr)); }
  .timeline::before{ left:10px; }
  .timeline-item{ grid-template-columns: 1fr; padding-left:24px; }
  .timeline-dot{ left:5px; }
  .timeline-item .timeline-card{ grid-column:1 !important; }
  .contact-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 760px){
  .nav-links{ display:none; }
  .hamburger{ display:block; }
  .hero-content{ gap:24px; }
  .skills-grid{ grid-template-columns: 1fr; }
  .cards{ grid-template-columns: 1fr; }
}
@media (min-width: 1024px) {
  .navbar-dropdown {
    display: none;
  }
}
/* Base responsive adjustments */
@media (max-width: 1024px) {
  .contact-info-upper-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  .contact-info-container {
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: center;
  }

  .contact-info-container img {
    width: 40px;
    height: 40px;
  }

  .btn {
    margin-top: 15px;
  }

  footer nav ul.nav-links {
    flex-direction: column;
    gap: 10px;
    text-align: center;
    padding: 0;
  }
}

@media (max-width: 768px) {
  .section__text__p1 {
    font-size: 16px;
  }

  .title {
    font-size: 28px;
  }

  .contact-info-container p {
    font-size: 14px;
  }

  .btn {
    padding: 10px 20px;
    font-size: 14px;
  }
}

/* Modal responsiveness */
@media (max-width: 1024px) {
  .modal-dialog {
    width: 80%;
    max-width: 600px;
    padding: 20px;
  }
}

@media (max-width: 768px) {
  .modal-dialog {
    width: 90%;
    padding: 15px;
  }

  .modal-list li {
    font-size: 14px;
  }

  .modal h3 {
    font-size: 20px;
  }

  .modal p {
    font-size: 14px;
  }
}
/* Contact section responsiveness */
@media (max-width: 768px) {
  .contact-info-container {
    display: flex;
    flex-direction: column; /* Stack icon and text */
    align-items: center;
    text-align: center;
    gap: 5px;
    max-width: 90%; /* Prevent overflowing */
    word-wrap: break-word; /* Wrap long email/link */
  }

  .contact-info-container a {
    word-break: break-all; /* Break the email if too long */
    font-size: 14px;
  }

  .contact-info-container img {
    width: 35px;
    height: 35px;
  }
}
