/* ============================================================
   茲茲文教全站 — 精品設計層(子頁面用)
   套用對象:所有子頁面(about/teachers/branches/...)
   只在 body.luxury 才生效;首頁有自己的 homepage-luxury.css
   ============================================================ */

:root {
  --font-serif: 'Noto Serif TC', 'Cormorant Garamond', serif;
  --gold-line: linear-gradient(90deg, transparent, var(--tzutzu-gold), transparent);
}

/* ============================================================
   全站共用:大標題用襯線、其他全 Sans
   ============================================================ */
/* 預設所有標題為 Sans (覆蓋 style.css 任何 serif 設定) */
body.luxury h1,
body.luxury h2,
body.luxury h3,
body.luxury h4,
body.luxury h5,
body.luxury h6 {
  font-family: var(--font-sans);
}

/* 只有大標題用襯線 */
body.luxury .page-header h1,
body.luxury .section-title,
body.luxury .hero h1,
body.luxury .stat-number {
  font-family: var(--font-serif);
}

/* ============================================================
   字重和諧化(統一精品輕量感)
   原本全站 90 處 font-weight: 700,過度強調,改成階層式
   ============================================================ */

/* 卡片內標題、小標題、特色標籤 → 500 中等粗 */
body.luxury .philo-title,
body.luxury .stage-tag,
body.luxury .shilin-header,
body.luxury .branch-mini-shilin h4,
body.luxury .why-pole-name,
body.luxury .why-center-name,
body.luxury .philo-card-name,
body.luxury .philo-spot-label,
body.luxury .teacher-name,
body.luxury .footer-col h4,
body.luxury .stage-card h3,
body.luxury .faculty-name,
body.luxury .branch-mini h4,
body.luxury .testimonial-card .testimonial-source,
body.luxury .honor-item .honor-result,
body.luxury .feature-card h4,
body.luxury .stage-cta {
  font-weight: 500;
}

/* 通用降字重:所有 H2、H3 在 luxury 下都用 500
   (style.css 通用 h1-h4 設了 700,這裡覆蓋掉)
   個別需要更粗的元素,在後面用 !important 自行覆蓋 */
body.luxury h2,
body.luxury h3,
body.luxury .subject-header h2,
body.luxury .branch-section-header h2,
body.luxury .battle-camp h3,
body.luxury .stage-hero-quote,
body.luxury .stage-hero h2 {
  font-weight: 500;
}

/* 內文裡的 strong/bold 強調 → 600(從 700 降一階) */
body.luxury .why-tzutzu .section-intro strong,
body.luxury .why-footnote strong,
body.luxury .philo-spot-desc strong,
body.luxury .section-intro strong,
body.luxury p strong,
body.luxury li strong {
  font-weight: 600;
}

/* tianmu-emphasis 那個「NEW 2024」標籤、branch-tel 電話、shilin-mini-shilin 也是 */
body.luxury .tianmu-emphasis::before,
body.luxury .branch-mini-shilin .branch-tel,
body.luxury .branch-mini .branch-tel {
  font-weight: 600;
}

/* 通用 h4(卡片內小標題) → 500 */
body.luxury h4 {
  font-weight: 500;
}

/* 通用 h3 → 500 */
body.luxury .container h3,
body.luxury .subject-block h3 {
  font-weight: 500;
}

/* ============================================================
   PAGE HEADER (子頁面共通)
   ============================================================ */
body.luxury .page-header {
  background: #FFFFFF;  /* 從米色改純白 */
  padding: 100px 60px 70px;
  border-bottom: 1px solid var(--border);
  position: relative;
}
/* 學齡部頂端細色帶,從原本整片漸層底改成 1px 細邊 */
body.luxury .page-header.elem {
  background: #FFFFFF;
  border-top: 1px solid var(--line-elem);
}
body.luxury .page-header.junior {
  background: #FFFFFF;
  border-top: 1px solid var(--line-junior);
}
body.luxury .page-header.senior {
  background: #FFFFFF;
  border-top: 1px solid var(--line-senior);
}

body.luxury .page-header h1 {
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--tzutzu-brown-title);
  margin-bottom: 20px;
}
/* 子頁面 H1 內的紅色 accent 統一改棕色 */
body.luxury .page-header h1 .accent,
body.luxury .page-header h1 .red {
  color: var(--tzutzu-brown-title) !important;
}

/* page-header 內的麵包屑導航 - 改成精緻英文標題(不可按) */
body.luxury .page-header .crumb {
  margin-bottom: 24px;
  color: var(--tzutzu-red);
  font-size: 12px;
  letter-spacing: 6px;
  font-weight: 600;
  text-transform: uppercase;
  font-family: var(--font-sans);
}
/* 手機字距收緊 */
@media (max-width: 768px) {
  body.luxury .page-header .crumb {
    letter-spacing: 4px;
    font-size: 11px;
  }
}

/* page-header 內的副標 p */
body.luxury .page-header p {
  font-family: var(--font-sans);
  color: var(--tzutzu-brown);
  line-height: 1.95;
  max-width: 720px;
}

/* page-header 下方加細金線(視覺呼應首頁) */
body.luxury .page-header h1::after {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: var(--gold-line);
  margin: 20px 0 0;
}

/* ============================================================
   區塊標題 (.section-eyebrow + .section-title)
   ============================================================ */
body.luxury .section-eyebrow {
  font-family: var(--font-sans);
  font-size: 12px;
  letter-spacing: 8px;
  color: var(--tzutzu-brown);
  font-weight: 600;
  margin-bottom: 28px;
  display: inline-block;
  position: relative;
  padding-left: 40px;
}
body.luxury .section-eyebrow::before {
  content: '';
  position: absolute;
  left: 0; top: 50%;
  width: 28px; height: 1px;
  background: var(--tzutzu-gold);
}

body.luxury .section-title {
  font-family: var(--font-serif);
  font-weight: 500;
  letter-spacing: 1px;
  color: var(--tzutzu-brown-title);
}
/* section-title 內的紅色 accent 統一改棕色 */
body.luxury .section-title .accent {
  color: var(--tzutzu-brown-title);
}

/* ============================================================
   按鈕方角化(全站)
   ============================================================ */
body.luxury .btn {
  border-radius: 2px;
  letter-spacing: 3px;
}

/* LINE 按鈕保留綠色 */
body.luxury .btn-line {
  background: #06C755;
  color: white;
  border: 1px solid #06C755;
}
body.luxury .btn-line:hover {
  background: #05A648;
  border-color: #05A648;
}

/* 主要按鈕(棕底白字) */
body.luxury .btn-primary {
  background: var(--tzutzu-brown-title);
  color: white;
  border: 1px solid var(--tzutzu-brown-title);
}
body.luxury .btn-primary:hover {
  background: var(--tzutzu-brown-deep);
  border-color: var(--tzutzu-brown-deep);
}

/* 次要按鈕(透明底金邊) */
body.luxury .btn-secondary {
  background: transparent;
  color: var(--tzutzu-brown-title);
  border: 1px solid var(--tzutzu-gold);
}
body.luxury .btn-secondary:hover {
  background: var(--tzutzu-gold);
  color: white;
}

/* ============================================================
   通用卡片圓角縮小 (4px,精品感)
   保留卡片內各種特殊樣式不動,只動圓角
   ============================================================ */
body.luxury .faculty-card,
body.luxury .stage-card,
body.luxury .branch-mini,
body.luxury .branch-mini-shilin,
body.luxury .testimonial-card,
body.luxury .news-card,
body.luxury .ig-card,
body.luxury .result-card,
body.luxury .event-card {
  border-radius: 6px;
}

/* coming-soon-card 維持原虛線方角 */
body.luxury .coming-soon-card {
  border-radius: 6px;
}

/* ============================================================
   響應式 - 手機版
   ============================================================ */
@media (max-width: 768px) {
  body.luxury .page-header {
    padding: 70px 24px 50px;
  }
  body.luxury .page-header h1 {
    letter-spacing: 1.5px;
  }
  body.luxury .page-header h1::after {
    margin: 16px 0 0;
    width: 44px;
  }
  body.luxury .section-eyebrow {
    font-size: 11px;
    letter-spacing: 5px;
    padding-left: 30px;
  }
  body.luxury .section-eyebrow::before {
    width: 20px;
  }

  /* ============================================================
     兩校差異化對照表 - 手機版置中
     ============================================================ */
  body.luxury .classes-comparison-table td:first-child,
  body.luxury .classes-comparison-table th:first-child {
    text-align: center !important;
    letter-spacing: 0.5px !important;
  }
  body.luxury .classes-comparison {
    padding: 20px 14px;
  }
  body.luxury .classes-comparison-table th,
  body.luxury .classes-comparison-table td {
    padding: 12px 6px;
    font-size: 13px;
  }
  body.luxury .classes-comparison-table th {
    font-size: 11.5px;
    letter-spacing: 0.5px;
  }
  body.luxury .classes-comparison h4 {
    font-size: 16px;
    letter-spacing: 1.5px;
    text-align: center;
  }

  /* ============================================================
     CTA 卡片(諮詢區) - 手機版精緻化
     ============================================================ */
  body.luxury .cta-block {
    padding: 40px 24px;
    border-radius: 8px;
  }
  body.luxury .cta-block h3 {
    font-size: 22px;
    letter-spacing: 2px;
  }
  body.luxury .cta-block .cta-buttons {
    flex-direction: column;
    gap: 12px;
  }
  body.luxury .cta-block .cta-buttons .btn {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  /* ============================================================
     Footer 手機簡化版
     ============================================================ */
  body.luxury footer .footer-top {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    text-align: center;
  }
  /* 隱藏右側三欄連結列表,只保留品牌區 */
  body.luxury footer .footer-col {
    display: none;
  }
  /* 但要保留「聯絡諮詢」欄(電話資訊),改成簡單格式 */
  body.luxury footer .footer-col:nth-of-type(3) {
    display: block;
    text-align: center;
    margin-top: 12px;
  }
  body.luxury footer .footer-col:nth-of-type(3) h4 {
    font-size: 14px;
    margin-bottom: 14px;
    letter-spacing: 4px;
  }
  body.luxury footer .footer-col:nth-of-type(3) ul {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
  body.luxury footer .footer-col:nth-of-type(3) .footer-branch-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: center;
  }
  /* footer 整體 padding 縮小 */
  body.luxury footer {
    padding: 50px 24px 28px !important;
  }
  body.luxury footer .footer-brand {
    text-align: center;
  }
  body.luxury footer .footer-brand .social-icons {
    justify-content: center;
  }
  /* ============================================================
     漢堡選單(手機版字級精緻化)
     桌機 28px 不動,只縮手機/平板
     ============================================================ */
  body.luxury .fullscreen-menu-list a {
    font-size: 17px !important;
    letter-spacing: 4px !important;
    font-weight: 400;
    padding: 6px 16px !important;
  }
  body.luxury .fullscreen-menu-list li {
    margin: 8px 0 !important;
  }
}

/* 平板尺寸(769-1024) 也精緻化 */
@media (min-width: 769px) and (max-width: 1024px) {
  body.luxury .fullscreen-menu-list a {
    font-size: 20px !important;
    letter-spacing: 5px !important;
    font-weight: 400;
  }
}
