  *, *::before, *::after {
    box-sizing: border-box;
  }

  html {
    scroll-behavior: smooth;
  }

  body {
    overflow-x: hidden;
  }

  /* Scroll indicator */
  .scroll-indicator {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Room cards */
  .room-card {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.6s ease, transform 0.6s ease;
  }

  /* Mobile menu */
  #mobile-menu.open {
    opacity: 1;
    pointer-events: all;
  }

  #mobile-menu.closed {
    opacity: 0;
    pointer-events: none;
  }

  /* Reduced motion */
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
    .room-card,
    .group img {
      transition: none;
    }
    .group img {
      transform: none;
    }
    .animate-bounce {
      animation: none;
    }
  }
</style>
