/* General Styles */
    .navbar {
      position: fixed;
      top: 0;
      width: 100%;
      background-color: rgba(64, 64, 64, 0.8);
      height: 110px;
      transition: height 0.3s ease; /* Smooth height transition */
      z-index: 1000; /* Ensures navbar stays above content */
    }

    .navbar.shrink {
      height: 50px; /* Half the original height */
    }

    .navbar-container {
      display: flex;
      justify-content: space-between;
      align-items: center;
      height: 100%;
      padding: 0 20px;
    }

    .logo img {
      height: 105px;
      position: relative;
      top: 3px;
      transition: height 0.3s ease;
    }

    .nav-links {
      display: flex;
      justify-content: center;
      flex-grow: 1;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .nav-links li {
      margin: 0 15px;
    }

    .nav-links a {
      text-decoration: none;
      color: var(--secondary-color);
      font-size: 20px;
    }

    .nav-links a:hover {
      color: rgba(245, 190, 40, 0.9);
    }

    .book-button a {
      background-color: rgba(255, 20, 20, 0.7);
      color: white;
      padding: 7px 14px;
      text-decoration: none;
      text-align: center;
      display: inline-block;
      width: 128px;
      border-radius: 5px;
    }

    .book-button a:hover {
      background-color: rgba(255, 20, 20, 0.8);
    }

    .menu-button {
      display: none; /* Hidden on desktop */
      background: none;
      border: none;
      font-size: 20px;
      color: var(--secondary-color);
      cursor: pointer;
    }

    .menu-button:hover {
      color: rgba(245, 190, 40, 0.9);
    }

    /* Adjust sizes when navbar shrinks */
    .navbar.shrink {
      height: 60px; /* Smaller nav when shrunk */
    } .logo.shrink img {
      height: 59px; /* Smaller logo when shrunk */
      top: 4px;
    }

    .navbar.shrink .book-button a {
      padding: 2px 8px;
      font-size: 10px;
    }

    /* Mobile Styles */
    @media (max-width: 862px) {
      .navbar-container {
        display: grid;
        grid-template-columns: auto 1fr auto;
        align-items: center;
      }

      .menu-button {
        display: block;
        grid-column: 1;
      }

      .logo {
        grid-column: 2;
        justify-self: center;
      }

      .book-button {
        grid-column: 3;
      }

      .nav-links {
        display: block;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        position: absolute;
        top: 100%; /* Below the navbar */
        left: 0;
        width: 100%;
        background-color: rgba(64, 64, 64, 0.8);
        padding: 0;
      }

      .nav-links.show {
        max-height: 500px; /* Large enough for content; adjust if needed */
      }

      .nav-links li {
        margin: 10px 0;
        text-align: center;
      }
    }
