/* Zedenote override - force correct visuals over any plugin/snippet CSS */
.site-header { background: rgba(250, 250, 247, 0.96) !important; }
.site-header .brand-text b { color: #141414 !important; }
.site-header .brand-text span { color: #9c7f3d !important; }
.site-header .nav-list a { color: #141414 !important; }
.hero h1 { color: #ffffff !important; }
.hero h1 .gold { color: #c9a961 !important; }
.hero { background: #0a0a0a !important; }


/* WP submenu dropdown - WordPress uses .sub-menu (with hyphen) */
.site-header .nav-list { display: flex !important; gap: 32px !important; flex-wrap: nowrap !important; list-style: none !important; margin: 0 !important; padding: 0 !important; align-items: center !important; }
.site-header .nav-list > li { position: relative !important; }
.site-header .nav-list .sub-menu { position: absolute !important; top: 100% !important; left: -16px !important; background: #fff !important; border: 1px solid #e7e3d8 !important; border-top: 2px solid #c9a961 !important; padding: 8px !important; min-width: 200px !important; box-shadow: 0 24px 60px rgba(0,0,0,0.12) !important; opacity: 0 !important; visibility: hidden !important; transform: translateY(8px) !important; transition: all .2s ease !important; list-style: none !important; margin: 8px 0 0 !important; z-index: 100 !important; }
.site-header .nav-list .menu-item-has-children:hover > .sub-menu { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; }
.site-header .nav-list .sub-menu li { display: block !important; width: 100% !important; }
.site-header .nav-list .sub-menu a { display: block !important; padding: 10px 14px !important; font-size: 13.5px !important; letter-spacing: 0.08em !important; white-space: nowrap !important; color: #141414 !important; }
.site-header .nav-list .sub-menu a:hover { background: #f6efd9 !important; color: #9c7f3d !important; }
.site-header .nav-list .menu-item-has-children > a::before { content: "" !important; font-size: 9px !important; margin-right: 4px !important; color: #8a8a8a !important; }
.site-header .nav-list a { white-space: nowrap !important; font-size: 14px !important; }


/* === STRONGER HEADER OVERRIDE === */
html body header.site-header,
html body .site-header,
.site-header,
body > header,
header.site-header.site-header {
  background: #fafaf7 !important;
  background-color: #fafaf7 !important;
  background-image: none !important;
}
html body .site-header .brand-text b,
.site-header .brand-text b { color: #141414 !important; font-size: 22px !important; font-weight: 700 !important; }
html body .site-header .brand-text span,
.site-header .brand-text span { color: #9c7f3d !important; font-size: 12.5px !important; }
html body .site-header .nav-list a,
.site-header .nav-list a { color: #141414 !important; font-size: 15.5px !important; font-weight: 600 !important; }
html body .site-header .nav-list a:hover,
.site-header .nav-list a:hover { color: #9c7f3d !important; }
html body .site-header .nav-phone,
.site-header .nav-phone { color: #141414 !important; font-size: 16px !important; font-weight: 700 !important; }
html body .site-header .nav-phone .icon,
.site-header .nav-phone .icon { background: #c9a961 !important; color: #141414 !important; }


/* === FIX FOOTER LOGO (移除 filter) === */
.site-footer .foot-brand .brand img,
.foot-brand img { filter: none !important; opacity: 1 !important; height: 64px !important; display: block !important; }

/* === FIX ABOUT QUOTE 重疊 === */
.about-photo .about-quote { position: static !important; margin: 12px 16px 0 !important; background: rgba(20,20,20,0.85) !important; color: #e8d4a0 !important; padding: 12px 16px !important; border-radius: 4px !important; }
body .about-photo { aspect-ratio: auto !important; }
body .about-photo .inner { position: static !important; padding: 0 !important; }
body .about-photo img[style*="object-fit"] { position: static !important; height: auto !important; max-height: 480px !important; }

/* === FIX POST CARD 標題行距 + 摘要截斷 === */
.post-card .post-title { line-height: 1.4 !important; font-size: 17px !important; margin-bottom: 12px !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.post-card .post-excerpt { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; line-height: 1.7 !important; }
.post-feature .post-title { line-height: 1.45 !important; -webkit-line-clamp: 2 !important; }
.post-feature .post-excerpt { -webkit-line-clamp: 3 !important; }

.site-footer .foot-brand .brand img { filter: none !important; opacity: 1 !important; height: 64px !important; }
.about-photo .about-quote { position: static !important; margin: 12px 16px 0 !important; background: rgba(20,20,20,0.85) !important; padding: 12px 16px !important; }
.about-photo { aspect-ratio: auto !important; }
.about-photo .inner { position: static !important; }

.post-card .post-title { line-height: 1.4 !important; margin-bottom: 12px !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
.post-card .post-excerpt { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; line-height: 1.7 !important; }
.post-feature .post-title { -webkit-line-clamp: 2 !important; }
.post-feature .post-excerpt { -webkit-line-clamp: 3 !important; }

/* === ABOUT 照片不裁切人像 === */
.about-photo { aspect-ratio: auto !important; max-width: 480px !important; background: #1a1a1a !important; padding: 16px !important; }
.about-photo img { position: static !important; width: 100% !important; height: auto !important; max-height: 620px !important; object-fit: contain !important; display: block !important; }



/* FEATURED ARTICLE /   */
.section .section-title { padding: 0 !important; margin: 0 auto 32px !important; max-width: 720px; }
.section .section-title .eyebrow { margin: 0 0 12px !important; padding: 0 !important; }
.section .section-title h2,
.section .section-title .h-1 { margin: 0 0 14px !important; padding: 0 !important; line-height: 1.2 !important; }
.section .section-title::before,
.section .section-title::after { margin: 8px auto !important; }
.section { padding-top: 64px !important; padding-bottom: 64px !important; }
.section-soft { padding-top: 64px !important; padding-bottom: 64px !important; }

/* ===  Shorts 9:16=== */
.video-grid, .video-list, .youtube-grid, .shorts-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 28px !important; max-width: 900px !important; margin: 0 auto !important; }
@media (max-width: 768px) { .video-grid, .video-list, .youtube-grid, .shorts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; } }
.video-thumb, .yt-card, .shorts-card { aspect-ratio: 9 / 16 !important; width: 100% !important; height: auto !important; max-width: 260px !important; margin: 0 auto !important; border-radius: 14px !important; overflow: hidden !important; position: relative !important; background: #0a0a0a !important; }
.video-thumb img, .yt-card img, .shorts-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center center !important; display: block !important; transform: scale(2.45) !important; transform-origin: center center !important; }
.video-thumb:hover img, .yt-card:hover img, .shorts-card:hover img { transform: scale(2.55) !important; transition: transform 0.4s ease !important; }
/* Shorts  label*/
.video-thumb::before, .yt-card::before, .shorts-card::before { content: "SHORTS"; position: absolute; top: 10px; right: 10px; background: rgba(201,169,97,0.95); color: #0a0a0a; font-size: 9px; font-weight: 700; letter-spacing: 0.1em; padding: 3px 7px; border-radius: 3px; z-index: 3; }
/* === 關於我頁面 banner 縮小 === */
.page-hero { padding-top: 40px !important; padding-bottom: 40px !important; min-height: auto !important; }
.page-hero h1 { font-size: 36px !important; margin: 8px 0 !important; }
.page-hero .breadcrumbs, .page-hero .crumb { font-size: 12px !important; margin-bottom: 8px !important; }

/* === 標頭社群圖示 === */
.header-social { display: flex; gap: 8px; align-items: center; margin-right: 16px; }
.header-social a { width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: transparent; border: 1px solid rgba(20,20,20,0.18); color: #141414; text-decoration: none; font-size: 13px; font-weight: 600; transition: all 0.2s ease; line-height: 1; }
.header-social a:hover { background: #c9a961; color: #fff; border-color: #c9a961; transform: translateY(-1px); }
.site-header .nav-cta { display: flex; align-items: center; gap: 12px; }
@media (max-width: 768px) { .header-social { display: none !important; } }

/* === 頁尾縮窄精簡 === */
.site-footer { padding-top: 32px !important; padding-bottom: 12px !important; }
.site-footer .foot-grid { gap: 28px !important; margin-bottom: 20px !important; }
.site-footer .foot-brand p { font-size: 13px !important; line-height: 1.7 !important; margin-top: 8px !important; }
.site-footer .foot-col h4 { font-size: 13px !important; margin-bottom: 10px !important; letter-spacing: 0.15em !important; }
.site-footer .foot-col li, .site-footer .foot-col a { font-size: 13px !important; line-height: 1.7 !important; }
.site-footer .foot-contact li { font-size: 12.5px !important; gap: 6px !important; padding: 3px 0 !important; }
.site-footer .foot-bottom { padding-top: 14px !important; padding-bottom: 0 !important; font-size: 11px !important; }
.site-footer .foot-social a { width: 28px !important; height: 28px !important; font-size: 12px !important; }

/* === Shorts 直式外層 video-card === */
.video-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 24px !important; max-width: 900px !important; margin: 0 auto !important; }
.video-card { aspect-ratio: 9 / 16 !important; width: 100% !important; max-width: 260px !important; height: auto !important; margin: 0 auto !important; padding: 0 !important; background: #0a0a0a !important; border-radius: 14px !important; overflow: hidden !important; position: relative !important; }
.video-card .video-thumb { aspect-ratio: 9 / 16 !important; width: 100% !important; height: 100% !important; max-width: none !important; border-radius: inherit !important; position: relative !important; overflow: hidden !important; }
.video-card .video-thumb img { width: 100% !important; height: 100% !important; object-fit: cover !important; transform: scale(2.4) !important; transform-origin: center !important; transition: transform 0.4s ease !important; }
.video-card .video-thumb:hover img { transform: scale(2.55) !important; }
@media (max-width: 768px) { .video-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 12px !important; } }

/* === Shorts 輪播 carousel === */
.shorts-carousel-wrap { position: relative; max-width: 1000px; margin: 0 auto; padding: 0 50px; }
.shorts-carousel { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; scroll-snap-type: x mandatory; scroll-behavior: smooth; gap: 16px !important; padding: 4px 4px 16px !important; grid-template-columns: none !important; }
.shorts-carousel::-webkit-scrollbar { height: 6px; }
.shorts-carousel::-webkit-scrollbar-thumb { background: rgba(201,169,97,0.4); border-radius: 3px; }
.shorts-carousel .video-card { flex: 0 0 230px !important; width: 230px !important; max-width: 230px !important; min-width: 230px !important; scroll-snap-align: start; display: block !important; text-decoration: none !important; aspect-ratio: 9/16 !important; height: auto !important; margin: 0 !important; }
.shorts-carousel .video-card:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(0,0,0,0.25); }
.shorts-carousel .video-card { transition: transform 0.25s ease, box-shadow 0.25s ease; }
.shorts-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; background: #fff; border: 1px solid rgba(20,20,20,0.15); color: #141414; font-size: 22px; font-weight: 700; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0,0,0,0.12); z-index: 5; transition: all 0.2s ease; padding: 0; }
.shorts-arrow:hover { background: #c9a961; color: #fff; border-color: #c9a961; }
.shorts-prev { left: 0; }
.shorts-next { right: 0; }
@media (max-width: 600px) { .shorts-carousel-wrap { padding: 0 16px; } .shorts-arrow { display: none; } .shorts-carousel .video-card { flex: 0 0 180px !important; width: 180px !important; min-width: 180px !important; max-width: 180px !important; } }

/* === Shorts 縮圖 oar2.jpg 高畫質不需要 scale === */
.video-card .video-thumb img, .shorts-grid a img { transform: none !important; }

/* === 手機版漢堡選單 + RWD === */
@media (max-width: 960px) {
  .site-header .container.nav { position: relative; gap: 8px; padding: 12px 16px !important; }
  .brand img { width: 36px !important; height: 36px !important; }
  .brand-text b { font-size: 15px !important; }
  .brand-text span { font-size: 11px !important; }
  .menu-toggle { display: grid !important; place-items: center !important; cursor: pointer; }
  .header-social { margin-right: 8px !important; gap: 6px !important; }
  .header-social a { width: 28px !important; height: 28px !important; }
  .site-header .nav-list { position: absolute !important; top: 100%; left: 0; right: 0; flex-direction: column !important; background: rgba(250,250,247,0.98) !important; border-top: 1px solid rgba(20,20,20,0.08); padding: 16px 20px !important; gap: 0 !important; box-shadow: 0 8px 24px rgba(0,0,0,0.08); display: none !important; z-index: 999; }
  .site-header .nav-list.open { display: flex !important; }
  .site-header .nav-list > li { width: 100%; border-bottom: 1px solid rgba(20,20,20,0.06); }
  .site-header .nav-list > li:last-child { border-bottom: 0; }
  .site-header .nav-list a { display: block; padding: 14px 8px !important; font-size: 15px !important; }
}
@media (max-width: 768px) {
  .hero-unified-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .hero { padding: 32px 0 24px !important; min-height: 0 !important; }
  .hero-unified-content h1 { font-size: 28px !important; line-height: 1.4 !important; }
  .hero-unified-content .lede { font-size: 14px !important; }
  .hero-unified-photo { max-width: 280px !important; margin: 0 auto !important; }
  .hero-cat-row { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
  .hero-actions { flex-direction: column !important; gap: 10px !important; }
  .hero-actions .btn { width: 100% !important; text-align: center; }
  .stats-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; }
  .stats-strip { padding: 24px 0 !important; }
  .post-feature { grid-template-columns: 1fr !important; }
  .post-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
  .section { padding: 40px 0 !important; }
  .h-1 { font-size: 26px !important; }
  .about-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .about-photo { aspect-ratio: 3/4; max-width: 320px; margin: 0 auto !important; }
  .site-footer .foot-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .site-footer .foot-bottom { flex-direction: column !important; gap: 12px; align-items: flex-start !important; }
  .cta-band { padding: 32px 16px !important; }
  .page-hero { padding: 24px 0 !important; }
  .page-hero h1 { font-size: 26px !important; }
  .shorts-carousel-wrap { padding: 0 8px !important; }
  .shorts-arrow { display: none !important; }
  .shorts-carousel .video-card { flex: 0 0 175px !important; width: 175px !important; min-width: 175px !important; max-width: 175px !important; }
  .about-twocol { grid-template-columns: 1fr !important; gap: 24px !important; }
}
@media (max-width: 480px) {
  body { font-size: 14px; }
  .container { padding-left: 16px !important; padding-right: 16px !important; }
  .hero-cat-row { grid-template-columns: 1fr !important; }
  .hero-unified-content h1 { font-size: 24px !important; }
  .h-1 { font-size: 22px !important; }
}

/* ============================================
   ===  zedenote-mobile-redesign V2  ===
   雜誌風閱讀體驗 + 全站 RWD
   不影響網頁版（僅 max-width: 768px 生效）
   ============================================ */
@media (max-width: 768px) {
  /* === 首頁 Hero：隱藏形象照，文字優先 === */
  .hero-unified-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .hero-unified-photo { display: none !important; }
  .hero { padding: 36px 0 28px !important; min-height: auto !important; }
  .hero-eyebrow { font-size: 11px !important; letter-spacing: 0.35em !important; margin-bottom: 16px !important; }
  .hero-unified-content h1 { font-size: 26px !important; line-height: 1.5 !important; margin-bottom: 18px !important; }
  .hero-unified-content .lede { font-size: 15px !important; line-height: 1.85 !important; margin-bottom: 24px !important; }
  .hero-cat-row { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; margin: 24px 0 !important; }
  .hero-cat-item { padding: 14px 8px !important; font-size: 13px !important; }
  .hero-cat-item .cat-ico { font-size: 16px !important; }
  .hero-actions { flex-direction: column !important; gap: 10px !important; margin-top: 22px !important; }
  .hero-actions .btn { width: 100% !important; text-align: center !important; }

  /* === Stats 2x2 === */
  .stats-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; }
  .stats-strip { padding: 28px 0 !important; }
  .stat .num { font-size: 36px !important; }
  .stat .label { font-size: 12px !important; }

  /* === Section 通用 === */
  .section { padding: 40px 0 !important; }
  .section-sm { padding: 24px 0 !important; }
  .h-1 { font-size: 24px !important; line-height: 1.4 !important; }
  .section-title { margin-bottom: 24px !important; }
  .container { padding-left: 16px !important; padding-right: 16px !important; }

  /* === 文章卡 === */
  .post-feature { grid-template-columns: 1fr !important; gap: 16px !important; }
  .post-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
  .post-feature .post-body { padding: 16px !important; }
  .post-card .post-title { font-size: 17px !important; }
  .post-card .post-excerpt { font-size: 14px !important; }

  /* === About 區（這裡才出現形象照）=== */
  .about-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
  .about-photo { aspect-ratio: 3/4 !important; max-width: 280px !important; margin: 0 auto 8px !important; }
  .about-list li { font-size: 14px !important; line-height: 1.7 !important; }
  .about-quote { font-size: 13px !important; }

  /* === Service Area 1欄 === */
  .section-dark .container > div[style*="grid"] { grid-template-columns: 1fr !important; gap: 24px !important; }

  /* === Footer 1欄 === */
  .site-footer .foot-grid { grid-template-columns: 1fr !important; gap: 20px !important; text-align: left !important; }
  .site-footer .foot-bottom { flex-direction: column !important; gap: 10px !important; align-items: flex-start !important; }

  /* === Bigquote === */
  .bigquote { font-size: 18px !important; padding: 0 16px !important; line-height: 1.7 !important; }

  /* === Shorts 輪播 === */
  .shorts-carousel-wrap { padding: 0 8px !important; }
  .shorts-arrow { display: none !important; }
  .shorts-carousel .video-card { flex: 0 0 165px !important; width: 165px !important; min-width: 165px !important; max-width: 165px !important; }

  /* === 頁面 Banner（關於我 / 銷售案件 / 短影音頁面）=== */
  .page-hero { padding: 24px 0 !important; }
  .page-hero h1 { font-size: 24px !important; }
  .page-hero .breadcrumb, .page-hero .breadcrumbs { font-size: 11px !important; }

  /* === 關於我頁上下排 === */
  .about-twocol { grid-template-columns: 1fr !important; gap: 24px !important; }
  .zedenote-about-page { padding: 16px !important; }

  /* === Shorts 頁 grid === */
  .zedenote-shorts-page { padding: 16px !important; }
  .shorts-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }

  /* === CTA Band === */
  .cta-band { padding: 32px 16px !important; }
  .cta-band > div { grid-template-columns: 1fr !important; gap: 16px !important; text-align: center; }

  /* === 文章閱讀體驗（雜誌風）=== */
  body.single-post article p,
  body.single-post .post-content p,
  body.single-post .entry-content p {
    font-size: 17px !important;
    line-height: 1.95 !important;
    margin-bottom: 1.4em !important;
  }
  body.single-post article h2,
  body.single-post .entry-content h2 {
    font-family: 'Noto Serif TC', serif !important;
    font-size: 22px !important;
    line-height: 1.5 !important;
    margin-top: 1.8em !important;
    margin-bottom: 0.8em !important;
    color: #141414 !important;
  }
  body.single-post article h3,
  body.single-post .entry-content h3 {
    font-family: 'Noto Serif TC', serif !important;
    font-size: 19px !important;
    line-height: 1.5 !important;
    margin-top: 1.5em !important;
    margin-bottom: 0.6em !important;
  }
  body.single-post h1.post-title,
  body.single-post .post-title {
    font-size: 28px !important;
    line-height: 1.4 !important;
    font-family: 'Noto Serif TC', serif !important;
  }
  body.single-post article img { border-radius: 8px; }
  body.single-post article blockquote {
    border-left: 3px solid #c9a961 !important;
    padding-left: 16px !important;
    margin: 1.5em 0 !important;
    font-style: italic;
    color: #5a4a35;
  }
}

/* ============================================
   === 浮動 LINE CTA（手機專用）===
   ============================================ */
.float-cta {
  position: fixed;
  right: 16px;
  bottom: 80px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 9998;
}
.float-cta a {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,0.18);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.float-cta a:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(0,0,0,0.25);
}
.float-cta a:first-child {
  background: #141414;
  color: #c9a961;
  border: 2px solid #c9a961;
}
.float-cta a.line {
  background: #06C755;
  color: #fff;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  letter-spacing: -0.5px;
}
@media (min-width: 769px) {
  /* 網頁版隱藏浮動按鈕（桌面已有頂部 social icons + 電話）*/
  .float-cta { display: none !important; }
}

/* ===================================================================
   === Mobile Redesign V3 — 列表式文章 + 關 Chaty + 精簡頁尾 + 文章修正 ===
   =================================================================== */

/* === 關 Chaty Pro 浮動對話 === */
.chaty, #chaty-widget-0, .chaty-widget, [id^="chaty"] { display: none !important; visibility: hidden !important; }

/* === 浮動 CTA 縮小 === */
.float-cta a { width: 44px !important; height: 44px !important; font-size: 16px !important; }
.float-cta { bottom: 16px !important; right: 12px !important; gap: 10px !important; }

/* === 文章 H2 / H3 顆色修正（原本都是 rgb(117,47,0) 深紅褐）=== */
body.single-post article h2,
body.single-post article h3,
body.single-post .entry-content h2,
body.single-post .entry-content h3,
body.single-post .post-content h2,
body.single-post .post-content h3,
article.post h2, article.post h3,
.single .entry-content h2, .single .entry-content h3 {
  color: #141414 !important;
  font-family: 'Noto Serif TC', serif !important;
  font-weight: 700 !important;
}
body.single-post article h2,
body.single-post .entry-content h2,
article.post h2,
.single .entry-content h2 {
  border-left: 4px solid #c9a961 !important;
  padding-left: 14px !important;
  margin-top: 1.8em !important;
  font-size: 22px !important;
}
body.single-post article h3,
body.single-post .entry-content h3,
article.post h3,
.single .entry-content h3 {
  font-size: 19px !important;
  margin-top: 1.5em !important;
  color: #2d2d2d !important;
}

/* === CTA Band 黑底字色修正 === */
.cta-band h2, .cta-band h3,
section.section-dark h2, section.section-dark h3,
.cta-band [class*="title"] {
  color: #c9a961 !important;
  font-family: 'Noto Serif TC', serif !important;
}
.cta-band p { color: rgba(232,224,200,0.85) !important; }
.cta-band .eyebrow { color: rgba(201,169,97,0.7) !important; }

/* === 限制文章首圖大小 === */
body.single-post article .wp-post-image,
body.single-post .post-feature-img img,
body.single-post .post-thumb img,
body.single .featured-image img,
body.single .post-cover img,
body.single article > figure:first-of-type img,
body.single .entry-content > figure:first-of-type img {
  max-height: 360px !important;
  width: 100% !important;
  object-fit: cover !important;
  border-radius: 8px;
}

@media (max-width: 768px) {
  /* 首圖手機更小 */
  body.single-post article .wp-post-image,
  body.single-post .post-feature-img img,
  body.single-post .post-thumb img,
  body.single article > figure:first-of-type img,
  body.single .entry-content > figure:first-of-type img {
    max-height: 220px !important;
  }

  /* === 1. 首頁最新文章改列表式 === */
  .post-grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .post-grid .post-card,
  .post-grid > article {
    display: grid !important;
    grid-template-columns: 100px 1fr !important;
    gap: 14px !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid rgba(20,20,20,0.08) !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: transparent !important;
  }
  .post-grid .post-card:last-child { border-bottom: 0 !important; }
  .post-grid .post-thumb {
    width: 100px !important;
    height: 100px !important;
    aspect-ratio: 1 !important;
    border-radius: 8px !important;
    margin: 0 !important;
  }
  .post-grid .post-body { padding: 0 !important; }
  .post-grid .post-meta { font-size: 11px !important; margin-bottom: 4px !important; }
  .post-grid .post-meta .cat { padding: 2px 6px !important; font-size: 10px !important; }
  .post-grid .post-title {
    font-size: 15px !important;
    line-height: 1.45 !important;
    margin: 0 0 4px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  .post-grid .post-excerpt {
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #666 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }
  .post-grid .read-more { display: none !important; }

  /* === 2. 浮動 CTA 手機更小 === */
  .float-cta a { width: 42px !important; height: 42px !important; font-size: 15px !important; }
  .float-cta { bottom: 14px !important; right: 10px !important; gap: 8px !important; }

  /* === 3. 頁尾精簡 === */
  .site-footer { padding: 24px 0 12px !important; }
  .site-footer .foot-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    text-align: center !important;
  }
  .site-footer .foot-brand { text-align: center; }
  .site-footer .foot-brand .brand { justify-content: center; }
  .site-footer .foot-brand p { display: none !important; }
  .site-footer .foot-col h4 { font-size: 11px !important; margin: 0 0 4px !important; opacity: 0.6; }
  .site-footer .foot-col ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 6px 14px !important;
  }
  .site-footer .foot-col li { display: inline-block !important; }
  .site-footer .foot-col a { font-size: 12px !important; }
  .site-footer .foot-contact { display: flex; flex-direction: column; gap: 4px; align-items: center !important; }
  .site-footer .foot-contact li { font-size: 12px !important; }
  .site-footer .foot-bottom { text-align: center !important; padding-top: 12px !important; flex-direction: column !important; gap: 8px !important; align-items: center !important; font-size: 10px !important; }
  .site-footer .foot-social { justify-content: center !important; }
  .site-footer .foot-social a { width: 26px !important; height: 26px !important; font-size: 11px !important; }

  /* === 4. CTA Band 簡化 === */
  .cta-band { padding: 28px 16px !important; }
  .cta-band > div, .cta-band .container > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 12px !important;
    grid-template-columns: 1fr !important;
  }
  .cta-band h2, .cta-band h3 { font-size: 18px !important; margin: 0 !important; }
  .cta-band p { font-size: 13px !important; margin: 4px 0 !important; }
  .cta-band .btn, .cta-band a[class*="btn"] {
    width: 100% !important;
    max-width: 280px !important;
  }
  .cta-band [class*="phone"]:not(a) { display: none !important; }

  /* === 文章內頁手機狑雜誠 === */
  body.single-post article p,
  body.single-post .entry-content p {
    font-size: 16px !important;
    line-height: 1.9 !important;
  }
  body.single-post article h2,
  body.single-post .entry-content h2 { font-size: 20px !important; }
  body.single-post article h3,
  body.single-post .entry-content h3 { font-size: 17px !important; }
}

/* ===========================================
   === V4 — 文章 BLOCKQUOTE/Bar/CTA/Footer 全測險 ===
   =========================================== */

/* === 1. 黑底黑字 BLOCKQUOTE 修正 === */
article blockquote, .entry-content blockquote, .post-content blockquote {
  background: linear-gradient(135deg, #1a1a1a 0%, #0a0a0a 100%) !important;
  color: #f5f0e6 !important;
  padding: 24px 24px 24px 24px !important;
  border-left: 4px solid #c9a961 !important;
  border-radius: 6px !important;
  margin: 1.5em 0 !important;
  font-family: 'Noto Serif TC', serif !important;
  font-style: normal !important;
}
article blockquote *, .entry-content blockquote *, .post-content blockquote * {
  color: #f5f0e6 !important;
  background: transparent !important;
}
article blockquote p, .entry-content blockquote p, .post-content blockquote p {
  font-size: 18px !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}

/* === 2. 麵絰三按鈕 (mobile-cta-bar) 縮小 === */
#mobile-cta-bar { height: 48px !important; padding: 4px 0 !important; }
#mobile-cta-bar a, #mobile-cta-bar > * {
  font-size: 11px !important;
  padding: 4px 0 !important;
}
#mobile-cta-bar svg, #mobile-cta-bar img, #mobile-cta-bar [class*="icon"] {
  width: 16px !important; height: 16px !important;
}
@media (max-width: 768px) {
  #mobile-cta-bar { height: 44px !important; }
  #mobile-cta-bar a { font-size: 10.5px !important; }
}
/* 避免 mobile-cta-bar 袈吃到頁面底部 */
body.single-post, body.single, body.page { padding-bottom: 50px; }

/* === 3. 文章清單字距一致化 === */
article ol, article ul,
.entry-content ol, .entry-content ul {
  margin: 1em 0 !important;
  padding-left: 1.5em !important;
}
article ol li, article ul li,
.entry-content ol li, .entry-content ul li {
  font-size: 16px !important;
  line-height: 1.85 !important;
  margin-bottom: 0.6em !important;
  font-family: 'Noto Sans TC', sans-serif !important;
}
article ol li strong, article ol li b,
article ul li strong, article ul li b,
.entry-content ol li strong, .entry-content ul li strong {
  font-size: inherit !important;
  color: #141414 !important;
  font-weight: 700 !important;
}

/* === 4. 頁尾手機版更精簡 === */
@media (max-width: 768px) {
  .site-footer { padding: 20px 0 8px !important; }
  .site-footer .foot-brand img { width: 40px !important; height: 40px !important; }
  .site-footer .foot-brand b { font-size: 14px !important; }
  .site-footer .foot-brand span { font-size: 10px !important; }
  /* 隱藏 重複的 ABOUT / CONTENTS 棟侍，只保留 CONTACT */
  .site-footer .foot-col:nth-of-type(1),
  .site-footer .foot-col:nth-of-type(2) { display: none !important; }
  .site-footer .foot-col h4 { display: none !important; }
  .site-footer .foot-contact { gap: 8px !important; }
  .site-footer .foot-contact li { font-size: 11px !important; }
  .site-footer .foot-social a { color: #fff !important; }
}

/* === 5. 延伸閱讀改輪播 === */
.related-posts, .related-articles, .post-related,
[class*="related-post"], section[class*="related"],
ul.related-posts-list {
  display: flex !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  gap: 12px !important;
  padding: 8px 4px 16px !important;
  flex-wrap: nowrap !important;
  grid-template-columns: none !important;
}
.related-posts > *, .related-articles > *, .post-related > *,
ul.related-posts-list > li,
section[class*="related"] article {
  flex: 0 0 240px !important;
  width: 240px !important;
  max-width: 240px !important;
  scroll-snap-align: start !important;
}
.related-posts::-webkit-scrollbar, .related-articles::-webkit-scrollbar { height: 4px; }
.related-posts::-webkit-scrollbar-thumb { background: rgba(201,169,97,0.4); border-radius: 2px; }

/* === 6. 作者 bio 與 Consultation 合並（讓原本 bio 澆縮並透結合）=== */
body.single-post .post-author-bio,
body.single-post .author-bio,
body.single-post .about-grid,
body.single-post .site-about,
body.single .about-grid {
  display: none !important;
}
/* 保留 .cta-band作為唯一 CTA，加上作者簡註 */
body.single .cta-band .container { padding: 24px 16px !important; }
body.single .cta-band::before {
  content: "張元澤 | James  ·  不動產銷售顧問";
  display: block;
  text-align: center;
  font-size: 12px;
  letter-spacing: 0.15em;
  color: #c9a961;
  font-family: 'Noto Serif TC', serif;
  margin-bottom: 4px;
}
@media (max-width: 768px) {
  body.single .cta-band > div, body.single .cta-band .container > div {
    gap: 8px !important;
  }
}

/* === V5 最終收尾 === */

/* BLOCKQUOTE 強製內全部白字 */
body article blockquote,
html body .entry-content blockquote,
html body article blockquote,
html body .post-content blockquote,
html body .article-body blockquote {
  background: linear-gradient(135deg,#1a1a1a 0%,#0a0a0a 100%) !important;
  color: #f5f0e6 !important;
  padding: 24px !important;
  border-left: 4px solid #c9a961 !important;
  border-radius: 6px !important;
  margin: 1.5em 0 !important;
}
html body article blockquote *,
html body .entry-content blockquote *,
html body .article-body blockquote * {
  color: #f5f0e6 !important;
  background: transparent !important;
  font-family: 'Noto Serif TC', serif !important;
}
html body article blockquote h1,
html body article blockquote h2,
html body article blockquote h3,
html body article blockquote h4 {
  font-size: 18px !important;
  margin: 0 !important;
  color: #f5f0e6 !important;
}
html body article blockquote a,
html body article blockquote span {
  color: #c9a961 !important;
  text-decoration: none !important;
}

/* 隱藏作者 bio 區塊（inline-style 黑底 + 金邊框）*/
.article-body > div[style*="border-top: 3px solid var(--gold-500)"],
.entry-content > div[style*="border-top: 3px solid var(--gold-500)"],
body.single-post .article-body > div[style*="bk-900"] {
  display: none !important;
}

/* 隱藏延伸閱讀：section-soft 中含「延伸閱讀」標題 */
body.single-post .section-soft:has(h2:has-text("延伸閱讀")),
body.single .section-soft:has(.section-title h2) { /* fallback */ }

/* 頁尾手機版極簡重設計 */
@media (max-width: 768px) {
  .site-footer {
    padding: 24px 16px 12px !important;
  }
  .site-footer .container { padding: 0 !important; }
  .site-footer .foot-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: center !important;
    text-align: center !important;
    margin-bottom: 16px !important;
  }
  /* 保留 brand，隱藏所有 foot-col */
  .site-footer .foot-col,
  .site-footer .foot-col * { display: none !important; }
  /* Brand 簡潔 */
  .site-footer .foot-brand { padding: 0 !important; }
  .site-footer .foot-brand .brand {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 4px !important;
  }
  .site-footer .foot-brand img { width: 40px !important; height: 40px !important; }
  .site-footer .foot-brand .brand-text { text-align: center; }
  .site-footer .foot-brand b { font-size: 14px !important; color: #c9a961 !important; }
  .site-footer .foot-brand .brand-text span { font-size: 11px !important; color: rgba(232,224,200,0.6) !important; }
  .site-footer .foot-brand p { display: none !important; }
  /* 社群 icon 置中 */
  .site-footer .foot-bottom {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: center !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(255,255,255,0.08) !important;
  }
  .site-footer .foot-social {
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
  }
  .site-footer .foot-social a {
    width: 32px !important; height: 32px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(201,169,97,0.4) !important;
    background: transparent !important;
    color: #c9a961 !important;
    font-size: 11px !important;
  }
  .site-footer .foot-bottom > div:first-child,
  .site-footer .foot-bottom { font-size: 10px !important; color: rgba(255,255,255,0.4) !important; }
}

/* === V7 - 重新修正（上一次沒存進去）=== */

/* 手機文章頁隱藏 CTA banner */
@media (max-width: 768px) {
  body.single-post .cta-band,
  body.single .cta-band,
  body.single-post section.cta-band {
    display: none !important;
  }
}

/* 頁尾社群 icon Option B 樣式 */
.foot-social-top {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 14px;
  padding: 8px 0 24px;
  margin-bottom: 8px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.foot-social-top a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid rgba(201,169,97,0.45);
  color: #c9a961;
  text-decoration: none;
  transition: all 0.2s ease;
}
.foot-social-top a:hover {
  background: #c9a961;
  color: #fff;
  border-color: #c9a961;
  transform: translateY(-2px);
}
.foot-social-top a svg { display: block; }

/* 隱藏興舊的 .foot-bottom 社群 */
.foot-bottom .foot-social { display: none !important; }

/* === 加強 BLOCKQUOTE （避免 Used CSS 剖揉）=== */
html body article blockquote,
html body .entry-content blockquote,
html body .article-body blockquote {
  background: #0a0a0a !important;
  background-image: linear-gradient(135deg,#1a1a1a 0%,#0a0a0a 100%) !important;
  color: #f5f0e6 !important;
  padding: 24px !important;
  border-left: 4px solid #c9a961 !important;
  border-radius: 6px !important;
  margin: 1.5em 0 !important;
}
html body article blockquote *,
html body .entry-content blockquote * {
  color: #f5f0e6 !important;
  background: transparent !important;
}

/* === V8 鎖定 footer logo 正方形 === */
.site-footer .foot-brand img,
.site-footer .foot-brand .brand img {
  width: 60px !important;
  height: 60px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
}
.site-footer .foot-brand { text-align: center !important; }
.site-footer .foot-brand .brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
}
@media (max-width: 768px) {
  .site-footer .foot-brand img { width: 50px !important; height: 50px !important; }
}

/* === V9 頁尾重排順序：Brand → Social → Cols === */
@media (max-width: 768px) {
  .site-footer .container {
    display: flex !important;
    flex-direction: column !important;
  }
  .site-footer .foot-grid {
    display: contents !important;
  }
  .site-footer .foot-brand { order: 1 !important; }
  .site-footer .foot-social-top { order: 2 !important; }
  .site-footer .foot-col { order: 3 !important; }
  .site-footer .foot-bottom { order: 4 !important; }
}


/* ===== sticky sidebar / aside（CONSULTATION + 熱門文章 隨文章滑動）===== */
@media (min-width: 769px) {
  .article-grid { align-items: start; }
  .article-grid > aside {
    position: sticky;
    top: 100px;
    align-self: start;
    max-height: calc(100vh - 120px);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,.15) transparent;
  }
  .article-grid > aside::-webkit-scrollbar { width: 4px; }
  .article-grid > aside::-webkit-scrollbar-thumb { background: rgba(0,0,0,.15); border-radius: 2px; }
}
/* ===== end sticky sidebar ===== */


/* force-center-title-v2 */
body.single .page-hero h1,.page-hero .container h1,.page-hero h1{text-align:center !important}
@media (max-width:1024px){body.single .page-hero h1,.page-hero h1{text-align:center !important}}

/* zfig-svg-fullwidth */
.zfig{margin:24px auto;max-width:960px}
.zfig svg{width:100%;height:auto;display:block}

/* hero-title-center-v3 */
.page-hero h1,.page-hero .container h1{max-width:100% !important;margin-left:auto !important;margin-right:auto !important;text-align:center !important}