/* Prevent screen from moving horizontally */
html, body {
  overflow-x: hidden !important;
}

/* MOBILE ONLY — nothing here affects laptop or tablet */
@media (max-width: 768px) {

  /* Hide login/register on mobile */
  .navbar .btn-dark {
    display: none !important;
  }

  /* Base responsive text */
  html, body {
    -webkit-text-size-adjust: 100%;
    font-size: 16px;
    line-height: 1.4;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  /* Container spacing */
  .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  /* Navbar styling */
  .navbar {
    padding: 10px 12px !important;
    min-height: 60px;
  }

  /* Fix logo position on mobile (your request) */
  .navbar-brand {
    margin-left: auto;
    margin-right: auto;
    display: block;
    text-align: center;
  }

  /* Make logo slightly smaller */
  .navbar-brand img {
    width: 100%;
    max-width: 100%;
    height: auto;
  }

  /* Ensure toggle icon is always visible (your request) */
  .navbar-toggler {
    z-index: 9999;
    position: relative;
  }

  /* Make hamburger easier to tap */
  .hamburger.offcanvas-nav-btn {
    padding: 6px;
    margin-left: 8px;
  }

  /* Offcanvas full width */
  .offcanvas.offcanvas-nav {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px;
  }

  .offcanvas-nav .navbar-nav .nav-link {
    font-size: 18px;
    padding: 12px 0;
  }

  /* Headings on mobile */
  .display-1 {
    font-size: 28px !important;
    line-height: 1.2;
  }

  /* Stack hero buttons vertically */
  .d-flex.justify-content-center > span {
    display: block;
    margin-bottom: 10px;
    width: 100%;
  }

  .d-flex.justify-content-center > span a {
    width: 100%;
    text-align: center;
    display: block;
  }

  /* Change columns to single column on mobile */
  .row .col-md-4,
  .row .col-lg-4,
  .row .col-sm-6 {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px;
  }

  /* Card images */
  .card-img-top img {
    max-height: 220px;
    object-fit: cover;
  }

  /* Counter numbers */
  .counter {
    font-size: 28px !important;
  }

  /* Testimonials */
  .swiper-slide blockquote p {
    font-size: 15px !important;
    line-height: 1.5;
  }

  /* Accordion */
  .accordion-button {
    padding: 12px 14px;
    font-size: 16px;
  }

  /* Footer stacked */
  footer .row > div {
    width: 100%;
    margin-bottom: 18px;
  }

  footer .widget .btn {
    width: 100%;
    padding: 10px;
  }
}
