@media only screen and (max-width: 768px) {
    header .navbar-brand {
      padding-left: 1rem;
    }
    .section-1{
      padding-top: 7rem;
      padding-bottom: 5rem;
    }
    .section-1 .row .col-md-6 .panel {
      position: initial;
      width: initial;
      height: initial;
    }
    .section-2 .cover {
      background-position: -25vmin -10vmin;
    }
    .numbers .rect {
      width: 10rem;
      height: 8rem;
    }
    .numbers .rect h1 {
      font-size: 2rem;
    }
  
    .section-3 {
      height: inherit;
      padding: 10vmin !important;
    }
    .section-3 .row h1 {
      padding: 6vmin 4vmin;
    }
    .section-3 .platform .col-md-6 {
      text-align: center !important;
    }
    .section-3 .desktop i {
      font-size: 8vmin;
    }
    .section-4 .carousel-item {
      padding-left: 0.6rem;
    }
    footer .row .col-md-2 {
      margin-top: 8vmin;
    }
  }
  
  /* screen size 375px */
  
  @media only screen and (max-width: 375px) {
    .section-4 .card {
      width: 18em;
    }
  }
  
  @media only screen and (max-width: 320px) {
    .section-4 .carousel-inner {
      margin-left: -4vmin;
    }
  }

@media screen and (max-width: 768px) {
  /* Ensure footer parent is centered */
  footer {
    text-align: center !important;
  }

  .footerbody {
    flex-direction: column;
    align-items: center; /* Center children horizontally */
    padding: 1rem;
  }

  .footerleft {
    display: none; /* Hide bottom menu on mobile */
  }

  .footermain {
    width: 100%;
    height: 220px;
    margin: 1.5rem auto;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .footeraside {
    width: 100%;
    text-align: left !important;
    padding: 1.5rem 0 0.5rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .footeraside h4 {
    margin-bottom: 1rem;
    font-size: 1rem;
    width: 100%;
    text-align: center;
    padding-left: 0; /* Remove left padding for heading */
  }

  .footeraside p {
    margin: 0.7rem 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.5rem;
    font-size: 0.9rem;
    width: 100%;
    text-align: left;
    padding-left: 0;
    flex-wrap: wrap; /* Allow wrapping for long content */
  }

  .footeraside i {
    margin-right: 0.5rem; /* Space between icon and text */
    font-size: 1.2rem;
    min-width: 1.2rem; /* Ensure icons are aligned */
    text-align: left;
    flex-shrink: 0; /* Prevent icon from shrinking */
  }

  .footeraside a {
    display: inline;
    color: white;
    font-size: 0.9rem;
    text-align: left;
    padding-left: 0; /* Remove left padding for perfect left alignment */
    vertical-align: middle;
    word-break: break-word; /* Prevent overflow for long emails */
  }

  .border-bottom {
    padding: 1rem !important;
  }

  .border-bottom .me-3 {
    margin: 0 0.75rem !important;
  }

  footer .text-center {
    margin-top: 0 !important;
    padding-bottom: 0.5rem;
    text-align: center !important;
  }

  /* Center social media section horizontally */
  section.d-flex.justify-content-center {
    text-align: center !important;
    padding: 1rem 0;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%;
  }
  section.d-flex.justify-content-center .me-5 {
    width: 100%;
    margin: 0 0 1rem 0 !important;
    text-align: center !important;
    display: block !important;
  }
  section.d-flex.justify-content-center div {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 3rem;
    margin: 0 auto;
    width: auto;
  }
  section.d-flex.justify-content-center a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 2rem;
    color: white;
    min-width: 40px;
    min-height: 40px;
    transition: color 0.2s;
  }
  section.d-flex.justify-content-center a:hover {
    color: #40BEDE;
  }

  /* Center map and add rounded corners */
  #gmap-canvas {
    width: 95vw !important;
    height: 200px !important;
    border-radius: 16px;
    overflow: hidden;
    margin: 0 auto;
    box-shadow: 0 2px 16px rgba(0,0,0,0.15);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #gmap-canvas iframe {
    width: 100% !important;
    height: 100% !important;
    border: 0;
    border-radius: 16px;
    display: block;
    margin: 0 auto;
  }

  /* Center contact section */
  .footeraside {
    width: 100%;
    text-align: left !important;
    padding: 1.5rem 0 0.5rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .footeraside h4 {
    margin-bottom: 1rem;
    font-size: 1rem;
    width: 100%;
    text-align: center;
    padding-left: 0; /* Remove left padding for heading */
  }
  .footeraside p {
    margin: 0.7rem 0;
    display: flex;
    align-items: center; /* Vertically center icon and text */
    justify-content: flex-start;
    gap: 0.5rem;
    font-size: 0.9rem;
    width: 100%;
    text-align: left;
    padding-left: 0; /* Remove left padding for perfect left alignment */
  }
  .footeraside i {
    margin-right: 0.5rem; /* Space between icon and text */
    font-size: 1.2rem;
    min-width: 1.2rem; /* Ensure icons are aligned */
    text-align: left;
  }
  .footeraside a {
    display: inline-block;
    color: white;
    font-size: 0.9rem;
    text-align: left;
    padding-left: 0; /* Remove left padding for perfect left alignment */
    vertical-align: middle;
  }

  /* Remove extra margin from copyright */
  footer .text-center {
    margin-top: 0 !important;
    padding-bottom: 0.5rem;
    text-align: center !important;
  }
}

/* Fix map responsiveness */
#gmap-canvas {
  width: 100% !important;
  height: 100% !important;
}

#gmap-canvas iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

/* Make sure you do NOT have: */
/*
.navbar-toggler {
  display: none;
  pointer-events: none;
}
*/

/* Remove any custom .toggle-button styles if present */