/* ============================================
   Responsive Styles
   ============================================ */

/* Tablet */
@media (max-width: 1023px) {
  :root {
    --container-padding: 1.5rem;
  }
  
  h1 { font-size: 2.5rem; }
  h2 { font-size: 2rem; }
  h3 { font-size: 1.75rem; }
  
  .hero h1 {
    font-size: 3rem;
  }
  
  .hero-subtitle {
    font-size: 1.1rem;
  }
  
  .quick-nav-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  }
}

/* Mobile */
@media (max-width: 767px) {
  :root {
    --container-padding: 1rem;
  }
  
  h1 { font-size: 2rem; }
  h2 { font-size: 1.75rem; }
  h3 { font-size: 1.5rem; }
  
  .header-content {
    flex-wrap: wrap;
  }
  
  .nav-toggle {
    display: flex;
  }
  
  .nav-main {
    display: none;
    width: 100%;
    flex-direction: column;
    gap: var(--spacing-sm);
    padding-top: var(--spacing-md);
  }
  
  .nav-main.active {
    display: flex;
  }
  
  .nav-main a {
    padding: var(--spacing-md);
    background: var(--color-tertiary);
    border-radius: var(--radius-sm);
  }
  
  .hero {
    padding: var(--spacing-xl) 0;
  }
  
  .hero h1 {
    font-size: 2.2rem;
  }
  
  .hero-subtitle {
    font-size: 1rem;
  }
  
  .quick-nav-grid {
    grid-template-columns: 1fr;
  }
  
  .character-grid {
    grid-template-columns: 1fr;
  }
  
  .footer-content {
    grid-template-columns: 1fr;
    text-align: center;
  }
  
  .info-list li {
    flex-direction: column;
    gap: var(--spacing-xs);
  }
  
  .breadcrumb-list {
    font-size: 0.85rem;
  }
}

/* Small Mobile */
@media (max-width: 480px) {
  h1 { font-size: 1.75rem; }
  h2 { font-size: 1.5rem; }
  h3 { font-size: 1.25rem; }
  
  .logo-text {
    font-size: 1.4rem;
  }
  
  .hero h1 {
    font-size: 1.8rem;
  }
  
  .btn {
    width: 100%;
  }
  
  table {
    font-size: 0.9rem;
  }
  
  th, td {
    padding: var(--spacing-sm);
  }
}

/* Print */
@media print {
  .header,
  .footer,
  .nav-toggle,
  .ad-container {
    display: none;
  }
  
  body {
    background: white;
    color: black;
  }
  
  a {
    color: black;
    text-decoration: underline;
  }
  
  h1, h2, h3, h4, h5, h6 {
    color: black;
  }
}
