/* ===== FINAL MARGIN FIXES TO MATCH LEGAL PAGES ===== */

/* Override responsive fixes that reduced margins incorrectly */

/* Desktop Margins - Match Legal Pages Exactly */
@media (min-width: 1025px) {
  .container {
    padding: 0 2rem !important; /* Match legal pages exactly */
  }
  
  .hero__container {
    padding: 2rem !important; /* Match legal pages exactly */
  }
  
  .section {
    padding: 5rem 0 2rem !important; /* Restore original desktop padding */
  }
  
  .nav {
    padding: 1rem 0 !important; /* Restore original nav padding */
  }
  
  /* Ensure content areas have proper desktop margins */
  .features__container,
  .cities__container,
  .hours__container,
  .contact__container,
  .footer__container {
    padding: 0 !important; /* Let container handle padding */
  }
  
  /* Cards should have proper desktop padding */
  .feature__card,
  .city__card,
  .hours__card,
  .contact__info-card,
  .contact__form {
    padding: 2rem !important; /* Match legal pages card padding */
  }
}

/* Tablet Margins - Gradual Reduction */
@media (min-width: 769px) and (max-width: 1024px) {
  .container {
    padding: 0 1.5rem !important;
  }
  
  .hero__container {
    padding: 1.5rem !important;
  }
  
  .section {
    padding: 4rem 0 !important;
  }
  
  .nav {
    padding: 0.75rem 0 !important;
  }
  
  .feature__card,
  .city__card,
  .hours__card,
  .contact__info-card,
  .contact__form {
    padding: 1.5rem !important;
  }
}

/* Mobile Margins - Conservative Reduction */
@media (max-width: 768px) {
  .container {
    padding: 0 1rem !important; /* Conservative mobile padding */
  }
  
  .hero__container {
    padding: 1rem !important;
  }
  
  .section {
    padding: 3rem 0 !important; /* Conservative mobile section padding */
  }
  
  .nav {
    padding: 0.5rem 0 !important;
  }
  
  .feature__card,
  .city__card,
  .hours__card,
  .contact__info-card,
  .contact__form {
    padding: 1.25rem !important;
  }
  
  /* Legal content on mobile should match */
  .legal-content {
    margin: 1rem !important;
    padding: 1.5rem !important; /* Match legal pages mobile padding */
  }
}

/* Small Mobile - Minimal Reduction Only */
@media (max-width: 480px) {
  .container {
    padding: 0 0.75rem !important; /* Minimal reduction for very small screens */
  }
  
  .hero__container {
    padding: 0.75rem !important;
  }
  
  .section {
    padding: 2.5rem 0 !important;
  }
  
  .feature__card,
  .city__card,
  .hours__card,
  .contact__info-card,
  .contact__form {
    padding: 1rem !important;
  }
  
  .legal-content {
    margin: 0.75rem !important;
    padding: 1rem !important;
  }
}

/* Specific fixes for hero section to match legal page spacing */
.hero {
  padding-top: 0 !important; /* Remove any extra top padding */
}

.hero__content {
  max-width: 600px; /* Maintain content width like legal pages */
}

/* Ensure footer matches legal pages */
.footer {
  padding: 3rem 0 1rem !important;
}

@media (max-width: 1024px) {
  .footer {
    padding: 2.5rem 0 1rem !important;
  }
}

@media (max-width: 768px) {
  .footer {
    padding: 2rem 0 1rem !important;
  }
}

@media (max-width: 480px) {
  .footer {
    padding: 1.5rem 0 1rem !important;
  }
}

/* Override any conflicting responsive rules */
.hero__container.hero__container {
  max-width: 1200px !important; /* Ensure consistent max-width */
}

.container.container {
  max-width: 1200px !important; /* Ensure consistent max-width */
}

/* Ensure grid containers don't add extra padding */
.grid {
  padding: 0 !important;
}

/* Make sure features, cities, hours sections don't have conflicting padding */
.features,
.cities,
.hours,
.contact {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Legal page consistency check */
.legal-page .container {
  padding: 0 2rem !important; /* Ensure legal pages maintain their correct padding */
}

@media (max-width: 768px) {
  .legal-page .container {
    padding: 0 1rem !important;
  }
}

@media (max-width: 480px) {
  .legal-page .container {
    padding: 0 0.75rem !important;
  }
}
