/* Responsive Styles */

/* Tablet (Portrait) */
@media screen and (max-width: 991px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.6rem;
  }

  .left-menu ul, .right-menu ul {
    gap: var(--spacing-md);
  }

  .logo {
    margin: 0 var(--spacing-md);
  }

  .logo img {
    height: 40px;
  }

  .hero h1 {
    font-size: 3rem;
  }

  .hero h2 {
    font-size: 1.8rem;
  }

  /* Service Cards */
  .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Casino Hotels */
  .casino-image {
    width: 50%;
  }

  .casino-details {
    width: 50%;
    padding: var(--spacing-lg);
  }

  .slider-controls {
    left: 75%;
  }

  /* Accommodations */
  .accommodations-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* VIP Program */
  .vip-tiers {
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-lg);
  }

  .vip-tier {
    width: 100%;
    max-width: 400px;
  }

  .vip-tier.featured {
    transform: none;
  }

  .vip-tier.featured:hover {
    transform: translateY(-10px);
  }

  /* About Page */
  .story-content,
  .intro-content,
  .contact-content {
    flex-direction: column;
  }

  .story-image,
  .intro-image,
  .contact-image {
    margin-bottom: var(--spacing-lg);
  }

  .philosophy-columns {
    flex-direction: column;
  }

  .tab-pane.active {
    flex-direction: column;
  }

  .commitment-image {
    margin-bottom: var(--spacing-lg);
  }

  /* Contact Page */
  .contact-info-grid,
  .info-grid,
  .resources-grid,
  .awards-grid,
  .leadership-grid {
    grid-template-columns: 1fr;
  }
}

/* Mobile (Portrait) */
@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.2rem;
  }

  h2 {
    font-size: 1.8rem;
  }

  h3 {
    font-size: 1.4rem;
  }

  .container {
    padding: 0 var(--spacing-md);
  }

  /* Header */
  .left-menu, .right-menu {
    display: none;
  }

  .logo {
    margin: 0;
    flex: 1;
    text-align: left;
  }

  .logo a {
    flex-direction: row;
    align-items: center;
  }

  .logo img {
    height: 35px;
    margin-right: var(--spacing-sm);
    margin-bottom: 0;
  }

  .mobile-menu-toggle {
    display: block;
  }

  /* Hero */
  .hero {
    height: 80vh;
  }

  .hero h1 {
    font-size: 2.5rem;
  }

  .hero h2 {
    font-size: 1.5rem;
    margin-bottom: var(--spacing-md);
  }

  .hero p {
    font-size: 1rem;
    margin-bottom: var(--spacing-lg);
  }

  .hero-buttons {
    flex-direction: column;
    gap: var(--spacing-sm);
  }

  /* About */
  .about-content {
    flex-direction: column;
  }

  .about-image {
    margin-bottom: var(--spacing-lg);
  }

  /* Services */
  .services-grid {
    grid-template-columns: 1fr;
  }

  /* Casino Hotels */
  .casino-slide.active {
    flex-direction: column;
  }

  .casino-image,
  .casino-details {
    width: 100%;
  }

  .casino-image img {
    height: 300px;
  }

  .slider-controls {
    bottom: 20px;
    left: 50%;
  }

  /* Accommodations */
  .accommodations-grid {
    grid-template-columns: 1fr;
  }

  /* VIP Tiers */
  .vip-tiers {
    gap: var(--spacing-md);
  }

  /* Testimonials */
  .testimonial-author {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Booking Form */
  .form-row {
    flex-direction: column;
    gap: var(--spacing-md);
  }

  /* Footer */
  .footer-columns {
    flex-direction: column;
  }

  .footer-column {
    margin-bottom: var(--spacing-lg);
  }

  .footer-bottom .container {
    flex-direction: column;
    gap: var(--spacing-md);
  }

  /* Cookie Consent */
  .cookie-buttons {
    flex-direction: column;
  }

  /* Policy Tabs */
  .policy-tabs {
    flex-direction: column;
    border-bottom: none;
  }

  .policy-tab {
    border-bottom: 1px solid var(--border-color);
  }

  .policy-tab::after {
    display: none;
  }

  .commitment-tabs {
    flex-direction: column;
  }
}

/* Mobile (Landscape) */
@media screen and (max-width: 480px) {
  h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 1.6rem;
  }

  .hero h1 {
    font-size: 2rem;
  }

  .hero h2 {
    font-size: 1.3rem;
  }
}

/* Tablet and Up (Responsive Menu) */
@media screen and (min-width: 992px) {
  .mobile-menu {
    display: none !important;
  }
}

/* Medium Desktop */
@media screen and (min-width: 992px) and (max-width: 1199px) {
  .left-menu ul, .right-menu ul {
    gap: var(--spacing-md);
  }

  .logo {
    margin: 0 var(--spacing-lg);
  }
}

/* Large Desktop */
@media screen and (min-width: 1200px) {
  .container {
    padding: 0 var(--spacing-xl);
  }
}