/* Mobile overflow fix */
html, body {
  overflow-x: hidden;
  width: 100%;
  max-width: 100%;
  position: relative;
}

/* Fix for mobile viewport white line */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Fix for container overflow */
.container {
  width: 100%;
  max-width: 1200px;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

/* Fix for images and responsive elements */
img, iframe, video, embed, object {
  max-width: 100%;
  height: auto;
}

/* Fix for flexbox and grid containers on mobile */
.services-grid,
.destinations-grid,
.team-grid,
.stats-grid,
.partners-slider,
.about-grid,
.testimonial-grid,
.mission-vision-grid,
.info-cards,
.contact-grid,
.media-grid,
.packages-grid,
.gallery {
  width: 100%;
  max-width: 100%;
}

/* Fix for full-width sections */
section {
  width: 100%;
  max-width: 100vw;
}

/* Ensure contact section content is properly contained */
.contact-cta .container,
.appointment-container,
.service-detail-content,
.form-container {
  overflow: hidden;
  width: 100%;
}

/* Fix for table displays if used */
table {
  max-width: 100%;
  display: block;
  overflow-x: auto;
}

/* Mobile menu specific fixes */
@media screen and (max-width: 768px) {
  .page-banner, 
  .hero,
  section:first-of-type {
    margin-top: 70px;
  }
}
