/* ---------- 平板／小筆電：釋出導覽列空間，避免選項文字被擠成兩行 ---------- */
@media (max-width: 1100px){
  .site-nav-desktop .nav-item > a,
  .site-nav-mobile .nav-item > a,
  .nav-inner > nav:not(.site-nav-desktop) .nav-item > a{ padding:12px 10px; font-size:15px; }
}

/* ---------- 手機版 ---------- */
@media (max-width: 1024px){
  .series-grid{ grid-template-columns:repeat(3,1fr); }
  .series-grid .series-card:nth-child(4),
  .series-grid .series-card:nth-child(5){ grid-column:span 1; }
  .shop-grid{ grid-template-columns:repeat(2,1fr); }
  .process-timeline{ grid-template-columns:repeat(3,1fr); gap:40px 0; }
  .process-timeline::before{ display:none; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 1100px){
  .gh-series-grid{ grid-template-columns:repeat(3, 1fr); }
}

@media (max-width: 860px){
  /* backdrop-filter 會讓 fixed 子元素(手機抽屜選單)相對導覽列定位,
     手機版改用不透明背景 */
  .nav{ backdrop-filter:none; background:var(--paper); }
  .mobile-menu-toggle,
  .nav-burger.mobile-menu-toggle{ display:flex; align-items:center; justify-content:center; }
  /* Drawer open: hide header CTAs so they don't stack over the menu */
  .nav.is-mobile-menu-open .nav-cta .gradient-button,
  .nav.is-mobile-menu-open .nav-cta .nav-gradient-cta,
  .nav.is-mobile-menu-open .nav-cta .btn-dark{
    visibility:hidden;
    pointer-events:none;
  }
  .nav.is-mobile-menu-open .mobile-menu-toggle{
    position:relative;
    z-index:111;
  }
  .nav.is-mobile-menu-open .nav-cta > .account-menu{
    position:relative;
    z-index:112;
  }
  .nav-cta .btn-line{ display:none; }
  .nav-cta .btn-calc,
  .nav-cta .btn-contact{ display:none; }
  /* Mobile header CTA: 價格試算 — !important beats stale page React CSS
     (price.css/checkout.css/…) that still ship display:none after src.css. */
  .nav-cta .gradient-button,
  .nav-cta .nav-gradient-cta{
    display:inline-flex !important;
    flex-shrink:0;
  }
  .nav-cta .btn-dark{ display:none !important; }
  .hc-viewport{ height:78vh; min-height:520px; }
  .hc-copy{ padding:0 4px; }
  .hc-copy h1, .hc-copy h2{ max-width:100%; }
  .hc-lead{ max-width:100%; }
  .hc-arrow{ width:38px; height:38px; }
  .hc-arrow svg{ width:15px; height:15px; }
  .hc-prev{ left:10px; } .hc-next{ right:10px; }
  .st-arrow{ width:38px; height:38px; }
  .st-arrow svg{ width:15px; height:15px; }
  .st-slide{ width:min(420px, 82vw); margin:0 10px; }
  .about-grid, .pricing-inner{ grid-template-columns:1fr; gap:46px; }
  .series-grid{ grid-template-columns:repeat(2,1fr); }
  .stories-grid{ grid-template-columns:1fr; }
  .series-head{ flex-direction:column; align-items:flex-start; }
  .process-timeline{ grid-template-columns:repeat(2,1fr); }
  .about, .process, .pricing{ padding:80px 0; }
  .series, .faq, .stories{ padding:80px 0 90px; }

  /* 內頁共用元件的手機版 */
  .page-hero{ grid-template-columns:1fr; gap:28px; padding:40px 0 36px; }
  .page-hero-media{ order:2; min-height:0; aspect-ratio:16/10; }
  .page-hero-inner{ order:1; }
  .series-page-grid{ grid-template-columns:1fr; gap:36px; padding:36px 0 60px; }
  .prose-section{ padding:56px 0; }
  .configurator{ padding:56px 0 70px; }
  .configurator-inner{ grid-template-columns:1fr; gap:34px; }
  .cfg-summary{ position:relative; top:auto; }
  .jewelry-block{ padding:48px 0; }
  .jewelry-block-grid{ grid-template-columns:1fr; gap:28px; }
  .jewelry-block-grid.is-rev{ direction:ltr; }
  .contact-grid{ grid-template-columns:1fr; gap:36px; }
  .contact-section--intro .contact-map iframe{ height:180px; }
  .stories-page-masonry{ column-count:1; padding:8px 0 36px; }
  .stories-page-card:hover{ transform:none; }
  .diamond-hub-cta{ flex-direction:column; align-items:flex-start; padding:32px 26px; }
  .shape-grid{ grid-template-columns:repeat(3, 1fr); }
  .price-tab-labels{ flex-direction:column; align-items:flex-start; }

  .home-trust-grid{ grid-template-columns:repeat(2, 1fr); }
  .series-grid--compact{ grid-template-columns:repeat(2, 1fr); }
  .home-explore-grid{ grid-template-columns:1fr; }
  .home-explore, .faq--teaser, .series--compact{ padding:56px 0 64px; }
  .home-trust{ padding:36px 0; }

  .gh-hero__inner{ padding:120px 16px 80px; }
  .gh-chips{ gap:10px; }
  .gh-chip{ width:76px; }
  .gh-chip__icon{ width:48px; height:48px; border-radius:14px; font-size:15px; }
  .gh-series-grid{ grid-template-columns:repeat(2, 1fr); gap:24px 12px; }
  .gh-cards{ grid-template-columns:1fr; }
  .gh-section{ padding:48px 16px 56px; }
  .gh-poem{ padding:48px 16px 40px; }
  .page-home .nav{ top:32px; }
}

/* 減少動態效果 */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; transition:none; }
  .hc-slide{ transition:none; }
  .hc-media img{ transition:none; }
  .st-track{ transition:none; }
  .ringflip-track{ height:auto; }
  .ringflip-stage{ position:relative; height:auto; padding:80px 0; }
  .ringflip-ring{ transform:none !important; }
  .ringflip-caption{ position:relative; opacity:1; transform:translateX(-50%); }
}
