/* ===== MOBILE RESPONSIVE (Enhanced) ===== */
@media (max-width: 768px) {
  /* Navigation */
  .nav {
    padding: 16px 20px;
    background: rgba(245,243,239,0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }
  .nav-logo { flex-direction: row; align-items: baseline; gap: 8px; }
  .logo-en { font-size: 1rem; }
  .logo-cn { font-size: 0.6rem; }
  .nav-links { display: none; }

  /* Hero */
  .hero-title { font-size: clamp(3.5rem, 15vw, 5rem) !important; letter-spacing: 0.2em; }
  .hero-cn { font-size: clamp(1rem, 4vw, 1.4rem) !important; letter-spacing: 0.3em; }
  .hero-tagline { font-size: 0.75rem !important; padding: 0 20px; }
  .hero-eyebrow { font-size: 0.6rem !important; letter-spacing: 0.25em; }
  .hero-divider { width: 40px !important; }
  .scroll-hint { bottom: 24px; }

  /* Sections grid */
  .sections-grid {
    grid-template-columns: 1fr !important;
    gap: 1px;
    background: var(--sand);
  }
  .section-card {
    height: 45vh;
    min-height: 280px;
  }
  .section-info h2 { font-size: 1.4rem; }
  .section-info { padding: 28px 24px; }

  /* Page header */
  .page-header {
    height: 55vh;
    min-height: 380px;
  }
  .page-header h1 { font-size: clamp(2rem, 8vw, 3rem) !important; }
  .page-header-en { font-size: 0.7rem; }
  .page-header-num { font-size: 0.6rem; }

  /* Page body */
  .page-body {
    padding: 50px 20px !important;
  }
  .page-intro { margin-bottom: 50px; padding-bottom: 40px; }
  .page-intro p { font-size: 0.9rem; line-height: 2; }

  /* Content blocks */
  .content-block { margin-bottom: 50px; }
  .content-block h3 { font-size: 1.2rem; }
  .content-block p { font-size: 0.88rem; line-height: 2; }
  .content-block blockquote { font-size: 1rem; padding: 12px 0 12px 20px; }

  /* Art pieces */
  .art-piece { margin-bottom: 70px; }
  .art-piece-img { max-height: 40vh; }
  .art-piece-title { font-size: 1.1rem; }
  .art-piece-text { font-size: 0.85rem; }

  /* News entries */
  .news-entry { margin-bottom: 50px; padding-bottom: 40px; }
  .news-title { font-size: 1.2rem; line-height: 1.5; }
  .news-body p { font-size: 0.85rem; }
  .gemis-verdict { padding: 14px 18px; }
  .gemis-verdict strong { font-size: 0.7rem; }
  .gemis-verdict p { font-size: 0.82rem; }

  /* Book entries */
  .book-entry {
    grid-template-columns: 90px 1fr !important;
    gap: 20px;
  }
  .book-cover { width: 90px !important; height: 130px; font-size: 0.6rem; }
  .book-content h3 { font-size: 1rem; }
  .book-content p { font-size: 0.82rem; line-height: 1.9; }

  /* About */
  .about-narrative p { font-size: 0.9rem; line-height: 2.2; }
  .about-narrative p:first-of-type::first-letter { font-size: 2.2rem; }
  .quote-block { padding: 40px 24px; margin: 50px 0; }
  .quote-block p { font-size: clamp(1.1rem, 5vw, 1.5rem) !important; }

  /* Tags */
  .tag-row { gap: 8px; }
  .tag { font-size: 0.6rem; padding: 3px 10px; }

  /* Footer */
  .footer { padding: 50px 20px 40px; }
  .coords-label { font-size: 1rem; }
  .coords-note { font-size: 0.6rem; }
  .footer-mark { font-size: 0.8rem; }
  .footer-copy { font-size: 0.6rem; }
}

/* ===== VERY SMALL SCREENS ===== */
@media (max-width: 480px) {
  .hero-eyebrow { display: none; }
  .section-card { height: 40vh; min-height: 240px; }
  .page-header { height: 50vh; }
  .book-entry { grid-template-columns: 1fr !important; }
  .book-cover { width: 100% !important; height: 100px; }
  .about-narrative p:first-of-type::first-letter { font-size: 1.8rem; }
}

/* ===== PREVENT HORIZONTAL SCROLL ===== */
html { overflow-x: hidden; }
body { overflow-x: hidden; }