/* MOBILE & TABLET VERSION (max-width: 900px) */

.contact-wrapper {
    max-width: 94%;
    margin: 2.6rem auto;
    padding: 2.3rem 1.4rem;
    border-radius: 20px;
  }
  
  /* HERO */
  .contact-hero {
    text-align: left;
    margin-bottom: 2rem;
  }
  
  .contact-hero h1 {
    font-size: 1.9rem;
  }
  
  .contact-hero-text {
    font-size: 0.95rem;
  }
  
  /* BUTTON STACKING */
  .contact-buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    margin-top: 1.7rem;
  }
  
  .button {
    width: 100%;
  }
  
  /* FORM CARD */
  .improved-form {
    padding: 2.1rem 1.4rem;
    border-radius: 18px;
  }
  
  /* Form title and subtitle */
  .form-title {
    font-size: 1.25rem;
  }
  
  .form-subtitle {
    font-size: 0.9rem;
  }
  
  /* STEP CARDS */
  .steps-wrapper {
    gap: 1.8rem;
  }
  
  .step-card {
    width: 100%;
    max-width: 100%;
    padding: 1.4rem 1.3rem;
  }
  
  /* no left/right offset on mobile */
  .step-card-left,
  .step-card-right {
    margin: 0;
  }
  
  /* two-column body becomes single column */
  .step-body-two-cols {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  
  /* inputs */
  .card-input-box input,
  .card-input-box select {
    font-size: 0.95rem;
    padding: 0.85rem 0.9rem 0.85rem 2.5rem;
  }
  
  /* actions */
  .step-actions {
    margin-top: 1.2rem;
    justify-content: flex-end;
  }
  
  .step-actions-final {
    justify-content: space-between;
  }
  
  .gradient-btn {
    margin-top: 0.25rem;
    padding: 0.95rem 1.1rem;
    font-size: 0.9rem;
  }
  
  /* STATUS */
  .form-status {
    font-size: 0.86rem;
    margin-top: 0.6rem;
  }
  
  /* STEP 4 PACKAGES ON MOBILE */
  .package-summary {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  
  .package-item {
    padding: 0.9rem 1rem;
  }