/* ══════════════════════════════════════════════════
   四时织锦·舟游四海 — responsive.css
   响应式断点（所有区块的移动端适配）
   ══════════════════════════════════════════════════ */

/* ─── 1100px ─── */
@media (max-width: 1100px) {
  .about-grid          { grid-template-columns: 1fr; gap: 50px; }
  .vision-grid         { grid-template-columns: 1fr 1fr; }
  .vision-radar        { grid-column: 1/-1; }
  .footer-grid         { grid-template-columns: 1fr 1fr 1fr; }
  .tourism-grid        { grid-template-columns: repeat(2, 1fr); }
  /* Voyage banner */
  .voyage-banner       { grid-template-columns: 1fr; }
  .voyage-img-wrap     { min-height: 320px; padding: 28px; }
  .voyage-content      { padding: 40px 44px; }
  .voyage-title        { font-size: 2.6rem; }
  /* 三脉横向网格：1100px 下变为 2列 */
  .veins-grid          { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  /* 季节面板 */
  .spanel.active       { grid-template-columns: 50% 50%; }
  .season-tabs         { border-radius: var(--radius-md) var(--radius-md) 0 0; }
}

/* ─── 900px ─── */
@media (max-width: 900px) {
  :root { --nav-h: 64px; }
  .container   { padding: 0 24px; }
  .section-pad { padding: 72px 0; }

  /* Nav */
  .nav-links { display: none; }
  .nav-links.open {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: var(--nav-h);
    left: 0; right: 0;
    background: rgba(15,42,15,.97);
    padding: 24px;
    gap: 4px;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(255,255,255,.1);
    max-height: calc(100vh - var(--nav-h));
    overflow-y: auto;
  }
  .hamburger { display: flex; }

  /* Hero */
  .hero-title { font-size: clamp(2.4rem, 9vw, 4rem); }

  /* Zones */
  .voyage-banner     { grid-template-columns: 1fr; }
  .voyage-img-wrap   { min-height: 280px; padding: 24px; }
  .voyage-content    { padding: 36px 32px; }
  .voyage-title      { font-size: 2.2rem; letter-spacing: .2em; }
  .voyage-routes     { gap: 8px; }
  .zone-hero-card    { grid-template-columns: 1fr; }
  .zhc-img img       { min-height: 260px; }
  .zhc-body          { padding: 36px 32px; }
  /* 三脉网格 900px：变为 1列 */
  .veins-grid        { grid-template-columns: 1fr; gap: 20px; }
  .vg-img            { aspect-ratio: 16 / 9; }

  /* Seasons */
  .season-tabs       { grid-template-columns: repeat(2, 1fr); border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .stab              { min-height: 100px; padding: 22px 12px 18px; }
  .spanel.active     { grid-template-columns: 1fr; }
  .spanel-img        { max-height: 300px; }
  .spanel-body       { padding: 40px 32px; }
  .spanel-acts       { grid-template-columns: 1fr; }

  /* Experiences */
  .exp-slide { height: 380px; }

  /* Vision */
  .vision-grid       { grid-template-columns: 1fr; }
  .tl-items          { grid-template-columns: 1fr; gap: 24px; }
  .tl-items::before  { display: none; }
  .tl-item           { align-items: flex-start; text-align: left; padding: 0; }

  /* Gallery */
  .gallery-masonry { columns: 2; }

  /* Tourism */
  .tourism-grid { grid-template-columns: 1fr 1fr; }
  .tm-panel     { width: 100vw; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

/* ─── 600px ─── */
@media (max-width: 600px) {
  /* Hero */
  .hero-title  { font-size: clamp(2rem, 10vw, 3rem); }
  .hero-btns   { flex-direction: column; align-items: center; }

  /* About */
  .stats-grid  { grid-template-columns: repeat(2, 1fr); }

  /* Seasons 600px */
  .season-tabs     { grid-template-columns: repeat(2, 1fr); }
  .stab            { min-height: 88px; padding: 16px 10px 14px; gap: 6px; }
  .stab-icon       { font-size: 1.7rem; }
  .stab-name       { font-size: .88rem; }
  .stab-en         { display: none; }
  .spanel-body::before { font-size: 9rem; }
  .spanel-body h3  { font-size: 1.55rem; }
  .spanel-acts     { grid-template-columns: 1fr; gap: 8px; }

  /* Zones – 600px */
  .voyage-content  { padding: 28px 20px; }
  .voyage-title    { font-size: 1.8rem; letter-spacing: .15em; }
  .voyage-desc     { font-size: .88rem; }
  .zones-sub-header span { font-size: .78rem; }
  .vg-body         { padding: 22px 20px 26px; }
  .vg-title        { font-size: 1.25rem; }
  .zone-hero-card  { min-height: auto; }
  .zhc-body::before { font-size: 8rem; }

  /* Gallery */
  .gallery-masonry { columns: 2; padding: 0 16px; }

  /* Tourism */
  .tourism-grid { grid-template-columns: 1fr; }

  /* Experiences */
  .exp-slide  { height: 360px; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; }

  /* Hero pills */
  .hero-pills span { font-size: .75rem; }

  /* back-top */
  .back-top { bottom: 20px; right: 20px; }
}
