/* Responsive Utilities */

/* Tablet and below */
@media (max-width: 1024px) {
  .container {
    width: 95%;
  }

  .section {
    padding: var(--spacing-xxl) 0;
  }

  h1 { font-size: 1.75rem; }
  h2 { font-size: 1.5rem; }
  h3 { font-size: 1.125rem; }
}

/* Mobile */
@media (max-width: 768px) {
  body {
    font-size: 14px;
  }

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

  .section {
    padding: var(--spacing-xl) 0;
  }

  .section-title {
    font-size: 1.5rem;
    margin-bottom: var(--spacing-xl);
  }

  /* Hide elements on mobile */
  .hide-mobile {
    display: none !important;
  }

  /* Show elements only on mobile */
  .show-mobile {
    display: block !important;
  }
}

/* Small mobile */
@media (max-width: 480px) {
  h1 { font-size: 1.5rem; }
  h2 { font-size: 1.25rem; }
  h3 { font-size: 1rem; }

  .btn {
    width: 100%;
    text-align: center;
  }
}

/* Accessibility - Reduce motion */
@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }

  html {
    scroll-behavior: auto;
  }
}

/* Dark mode support (future enhancement) */
@media (prefers-color-scheme: dark) {
  /* Dark mode variables can be added here */
}

/* Print styles */
@media print {
  .site-header,
  .site-footer,
  .hero,
  .btn {
    display: none;
  }

  body {
    font-size: 12pt;
    line-height: 1.5;
    color: #000;
    background: #fff;
  }

  .event-card {
    break-inside: avoid;
    box-shadow: none;
    border: 1px solid #ddd;
    margin-bottom: 1rem;
  }
}