/* ========================================
   MOBILE & TABLET OPTIMIZATIONS
   Comprehensive responsive improvements
   ======================================== */

/* Tablet Optimizations (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  /* Improve spacing and readability */
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
  
  /* Better button sizes for tablets */
  .btn {
    padding: 12px 24px;
    font-size: 16px;
    min-height: 48px;
  }
  
  /* Improve card spacing */
  .card, .feature-card {
    margin-bottom: 25px;
  }
  
  /* Better form inputs */
  .form-control {
    padding: 12px 16px;
    font-size: 16px;
    min-height: 48px;
  }
  
  /* Improve section padding */
  section {
    padding: 60px 0;
  }
  
  /* Better typography */
  h1 {
    font-size: 2.5rem;
  }
  
  h2 {
    font-size: 2rem;
  }
  
  h3 {
    font-size: 1.5rem;
  }
}

/* Mobile Optimizations (max-width: 767px) */
@media (max-width: 767px) {
  /* Improve container padding */
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
  
  /* Better button sizes for mobile */
  .btn {
    padding: 14px 20px;
    font-size: 15px;
    min-height: 50px;
    width: 100%;
    max-width: 100%;
  }
  
  /* Improve card spacing */
  .card, .feature-card {
    margin-bottom: 20px;
  }
  
  /* Better form inputs */
  .form-control {
    padding: 14px 16px;
    font-size: 16px;
    min-height: 50px;
  }
  
  /* Improve section padding */
  section {
    padding: 40px 0;
  }
  
  /* Better typography */
  h1 {
    font-size: 2rem;
    line-height: 1.2;
  }
  
  h2 {
    font-size: 1.75rem;
    line-height: 1.3;
  }
  
  h3 {
    font-size: 1.25rem;
    line-height: 1.4;
  }
  
  /* Improve text readability */
  p {
    font-size: 16px;
    line-height: 1.6;
  }
  
  /* Better image responsiveness */
  img {
    max-width: 100%;
    height: auto;
  }
  
  /* Improve table responsiveness */
  table {
    font-size: 14px;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* Small Mobile Optimizations (max-width: 480px) */
@media (max-width: 480px) {
  /* Tighter container padding */
  .container {
    padding-left: 12px;
    padding-right: 12px;
  }
  
  /* Smaller buttons */
  .btn {
    padding: 12px 16px;
    font-size: 14px;
    min-height: 44px;
  }
  
  /* Smaller section padding */
  section {
    padding: 30px 0;
  }
  
  /* Smaller typography */
  h1 {
    font-size: 1.75rem;
  }
  
  h2 {
    font-size: 1.5rem;
  }
  
  h3 {
    font-size: 1.125rem;
  }
  
  p {
    font-size: 15px;
  }
}

/* Ensure navigation is always visible and properly styled on mobile/tablet */
@media (max-width: 991px) {
  /* Make sure mobile nav doesn't interfere with content */
  body {
    padding-top: 0;
  }
  
  /* Ensure header doesn't overlap nav */
  .header {
    position: relative !important;
    z-index: 1000;
  }
  
  /* Ensure main content starts after nav */
  .main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  
  /* Fix any z-index issues */
  .navmenu {
    z-index: 999 !important;
  }
}
