/* Responsive styles */

/* General responsive adjustments */
@media (max-width: 1400px) {
  .c {
    max-width: 1200px;
  }
}

@media (max-width: 1200px) {
  .c {
    max-width: 100%;
    padding: 0 2rem;
  }
  
  /* Reduce sizes for large screens */
  .ht {
    font-size: 2.25rem;
  }
  
  .st {
    font-size: 1.8rem;
  }
}

/* Tablet styles */
@media (max-width: 1024px) {
  /* Navigation changes */
  .dn {
    display: none;
  }
  
  .mb {
    display: block;
  }
  
  /* Grid adjustments */
  .sgr {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }
  
  .fg {
    grid-template-columns: repeat(2, 1fr);
  }
  
  /* Padding adjustments */
  .hs {
    padding: 6rem 0 4rem;
  }
  
  .is, .as, .rs, .ts, .cs {
    padding: 4rem 0 3rem;
  }
  
  /* Typography adjustments */
  .ht {
    font-size: 2rem;
  }
  
  .st {
    font-size: 1.75rem;
  }
}

/* Small tablet and large mobile styles */
@media (max-width: 768px) {
  .c {
    padding: 0 1.5rem;
  }
  
  /* Grid adjustments */
  .ig {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  
  .cig {
    flex-direction: column;
    gap: 1.5rem;
  }
  
  /* Spacing adjustments */
  .hs {
    padding: 5rem 0 3rem;
  }
  
  .is, .as, .rs, .ts, .cs {
    padding: 3rem 0 2rem;
  }
  
  /* Typography adjustments */
  .ht {
    font-size: 1.8rem;
  }
  
  .hst {
    font-size: 1.1rem;
  }
  
  .st {
    font-size: 1.6rem;
  }
  
  /* Service grid cards adjustments */
  .t-g {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
}

/* Mobile styles */
@media (max-width: 640px) {
  .c {
    padding: 0 1rem;
  }
  
  /* Grid adjustments */
  .sgr {
    grid-template-columns: 1fr;
  }
  
  .sg {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .t-g {
    grid-template-columns: 1fr;
  }
  
  .fg {
    grid-template-columns: 1fr;
  }
  
  /* Spacing adjustments */
  .hs {
    padding: 4rem 0 2rem;
  }
  
  .is, .as, .rs, .ts, .cs {
    padding: 2.5rem 0 2rem;
  }
  
  /* Typography adjustments */
  .ht {
    font-size: 1.6rem;
  }
  
  .st {
    font-size: 1.4rem;
  }
  
  /* Other adjustments */
  .asg {
    flex-direction: column;
    gap: 1rem;
  }
  
  .csg {
    flex-direction: column;
    gap: 1rem;
  }
  
  .sc {
    padding: 1.75rem 1.25rem 1.5rem;
  }
}

/* Very small mobile styles */
@media (max-width: 480px) {
  /* Typography adjustments */
  .ht {
    font-size: 1.4rem;
  }
  
  .st {
    font-size: 1.3rem;
  }
  
  /* Logo and spacing adjustments */
  .logo-text {
    font-size: 0.9rem;
  }
  
  .sc {
    padding: 1.5rem 1rem 1.25rem;
  }
  
  /* Form adjustments */
  .form-row {
    grid-template-columns: 1fr !important;
  }
}