/* mobile.css (RESPONSIVE RULES - unchanged except it inherits the new light theme) */

/* Default styles above are mobile-first */

/* Tablets */
@media (min-width: 768px) {
  .menuItems {
    justify-content: space-between;
    padding: 0 18px;
  }

  .logo {
    margin-left: 0;
  }

  .businessName {
    margin-left: 10px;
  }

  .hamburger {
    display: none;
  }

  .nav {
    display: flex;
    flex-direction: row;
    position: static;
    width: auto;
    padding: 0;
    background: transparent;
    border: none;
  }

  .nav-list {
    flex-direction: row;
    width: auto;
    padding: 0;
    gap: 18px;
  }

  .nav-list li a {
    width: auto;
    padding: 8px 10px;
  }

  .heroOverlay {
    left: 24px;
    right: auto;
    bottom: 36px;
    padding: 18px;
  }

  .heroTitle {
    font-size: 28px;
  }

  .heroSubtitle {
    font-size: 16px;
  }

  .mainContent {
    padding: 24px;
    gap: 22px;
    max-width: 1100px;
    margin: 0 auto;
  }

  /* Put Services + Booking side-by-side feel */
  #services.card,
  #book.card {
    padding: 22px;
  }

  .detailsGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
  }

  .bookingGrid {
    flex-direction: row;
    gap: 14px;
  }

  .bookingBlock {
    width: 50%;
  }

  .footerInner {
    flex-direction: row;
    justify-content: space-between;
    gap: 22px;
    max-width: 1100px;
    margin: 0 auto;
  }

  .footerCol {
    width: 33%;
  }
}

/* Laptops / desktops */
@media (min-width: 1024px) {
  .sectionTitle {
    font-size: 24px;
  }

  .serviceHeading,
  .detailHeading,
  .bookingTitle,
  .bookingInfo {
      font-size: 25px;
  }

  .serviceText,
  .detailList {
    font-size: 15px;
  }
}
