
/* OFZ - PhiAcademy Style - Global + Full-width Fix */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Montserrat:wght@300;400;500;600;700&display=swap');

/* ── TOP BAR ── */
header.wp-block-template-part::before {
  content: "OFZ BEAUTY ACADEMY  •  專業紋繡學院  •  IFBC  •  ISO 17024  •  ISO 9001";
  display: block;
  background-color: #c4a45f;
  color: #0d0d0d !important;
  text-align: center;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.15em;
  padding: 8px 20px;
  text-transform: uppercase;
}

/* ── HEADER / NAV ── */
header.wp-block-template-part .wp-block-group {
  background-color: #0d0d0d !important;
  border-bottom: 1px solid rgba(196,164,95,0.2) !important;
  padding: 0 40px !important;
}
header.wp-block-template-part .wp-block-group * { background: transparent !important; }

.wp-block-navigation a,
.wp-block-navigation__container a {
  color: #f0ece4 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 18px 16px !important;
}
.wp-block-navigation a:hover { color: #c4a45f !important; }

/* ── FOOTER ── */
footer.wp-block-template-part {
  background-color: #080808 !important;
  border-top: 1px solid rgba(196,164,95,0.15) !important;
}
footer.wp-block-template-part .wp-block-group {
  background-color: transparent !important;
  padding: 60px 40px 40px !important;
}
footer .wp-block-navigation a {
  color: #7a736b !important;
  font-size: 12px !important;
  letter-spacing: 0.05em !important;
  text-transform: none !important;
  padding: 4px 0 !important;
  font-weight: 400 !important;
}

/* ── PAGE BODY ── */
body { margin: 0 !important; }
.wp-site-blocks { background: #0d0d0d !important; }

/* ── CRITICAL: FULL WIDTH FIX for page content ── */
.entry-content,
.wp-block-post-content,
main.wp-block-group {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
  box-sizing: border-box !important;
}

/* Make phi-page full width */
.phi-page, .phi-home {
  width: 100% !important;
  max-width: 100% !important;
}

/* ── Page template inner container ── */
.wp-block-template-part + main,
.is-layout-constrained > :not(.alignwide):not(.alignfull) {
  max-width: 100% !important;
}

/* ── REMOVE GUTENBERG BLOCK GAP ABOVE HERO ── */
/* Gutenberg adds 24px margin-top to all blocks after the first in wp-site-blocks */
.wp-site-blocks > .phi-home,
.wp-site-blocks > .phi-page,
.wp-site-blocks > div:has(> .phi-hero),
.wp-site-blocks > div:has(> .phi-page-hero) {
  margin-top: 0 !important;
}

/* ── HERO HEIGHT & ALIGNMENT FIX ── */
.phi-page-hero,
.phi-hero {
  height: auto !important;
  min-height: calc(100vh - 96px) !important;
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  align-items: center !important;
}


/* Hide Home page title - PhiAcademy Style */
.home .entry-title,
.home .wp-block-post-title,
.home .page-title,
body.home h1.entry-title,
body.page-id-508 .entry-title,
body.page-id-508 .wp-block-post-title {
  display: none !important;
}

/* Home page - remove top padding before hero */
.home .entry-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Full width content for home page */
.home .wp-block-post-content,
.home .entry-content,
.home .site-main {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* === OFZ Unified Color Scheme — Override low-contrast text (auto-added) === */

/* 1. Pricing section (merged into services page) - force light text on dark wrapper */
.ofz-section-dark h2,
.ofz-section-dark h3 { color: #f0ece4 !important; }
.ofz-section-dark h2 em,
.ofz-section-dark h3 em { color: #c4a45f !important; }
.ofz-section-dark p { color: #d4cdc1 !important; }
.ofz-section-dark .ofz-kicker,
.ofz-section-dark .phi-kicker { color: #c4a45f !important; }

/* 2. Pricing table - light text + gold headers */
.ofz-price-table { color: #f0ece4 !important; border-collapse: collapse; }
.ofz-price-table th {
  color: #c4a45f !important;
  background: rgba(196, 164, 95, 0.08) !important;
  border-bottom: 1px solid rgba(196, 164, 95, 0.3) !important;
  padding: 14px 18px !important;
}
.ofz-price-table td {
  color: #f0ece4 !important;
  border-bottom: 1px solid rgba(240, 236, 228, 0.08) !important;
  padding: 14px 18px !important;
}
.ofz-price-table .price { color: #d4b47a !important; font-weight: 500; }
.ofz-price-note { color: #a0998f !important; font-size: 13px !important; }

/* 3. CTA section (CONSULTATION) inside dark wrapper - fix invisible text */
.ofz-section-dark .ofz-cta-title,
.ofz-section-dark .ofz-cta-text,
.ofz-section-dark p { color: #d4cdc1 !important; }

/* 4. Faculty page - CREDENTIALS cards on dark bg */
.ofz-cert-title { color: #f0ece4 !important; }
.ofz-cert-desc { color: #a0998f !important; }

/* 5. Faculty page - cert mentions in instructor cards (white bg uses dark text) */
.ofz-instructor-card strong,
.ofz-instructor-card p { color: #1a1a1a !important; }

/* 6. About page - 立即開始 small label on gold bg - use dark text */
.ofz-small-label { color: #1a1a1a !important; }

/* 7. Courses page - fix invisible button texts */
.phi-see-all-btn,
.ofz-see-all-btn { color: #f0ece4 !important; }
.phi-btn-gold,
.ofz-btn-gold {
  color: #1a1a1a !important;
  background: #c4a45f !important;
}
.phi-btn-gold:hover,
.ofz-btn-gold:hover {
  background: #d4b47a !important;
  color: #0d0d0d !important;
}

/* 8. Kicker contrast on light backgrounds */
.ofz-section-light .ofz-kicker,
.ofz-section-light .phi-kicker { color: #8a5a48 !important; }

/* 9. Em (italic) inside h2/h3 on light bg - improve contrast */
.ofz-section-light h2 em,
.ofz-section-light h3 em { color: #8a6c2e !important; }


/* === High-specificity override: dark section inside light wrapper === */
/* Beats: .ofz-section-light :not(.ofz-kicker) { color: #1a1a1a !important; } */

.ofz-section-light .ofz-section-dark h2,
.ofz-section-light .ofz-section-dark h2 em,
.ofz-section-light .ofz-section-dark h3,
.ofz-section-light .ofz-section-dark p,
.ofz-section-light .ofz-section-dark span,
.ofz-section-light .ofz-section-dark .ofz-kicker,
.ofz-section-light .ofz-section-dark .ofz-price-table,
.ofz-section-light .ofz-section-dark .ofz-price-table th,
.ofz-section-light .ofz-section-dark .ofz-price-table td,
.ofz-section-light .ofz-section-dark .ofz-price-table tbody td,
.ofz-section-light .ofz-section-dark .ofz-price-note { color: #f0ece4 !important; }

.ofz-section-light .ofz-section-dark h2 em,
.ofz-section-light .ofz-section-dark h3 em { color: #c4a45f !important; }
.ofz-section-light .ofz-section-dark .ofz-kicker { color: #c4a45f !important; }
.ofz-section-light .ofz-section-dark .ofz-price-table th { color: #c4a45f !important; }
.ofz-section-light .ofz-section-dark .ofz-price-table .price { color: #d4b47a !important; }
.ofz-section-light .ofz-section-dark .ofz-price-note,
.ofz-section-light .ofz-section-dark p { color: #a0998f !important; }

/* CTA "立即諮詢" in dark wrapper inside light page */
.ofz-section-light .ofz-section-dark h2,
.ofz-section-light .ofz-section-dark h3,
.ofz-section-light .ofz-section-dark .ofz-section h2,
.ofz-section-light .ofz-section-dark .ofz-section h3 { color: #f0ece4 !important; }


/* === Higher-specificity overrides for cert cards & instructor lists === */
.ofz-section-light .ofz-cert-card,
.ofz-section-light .ofz-cert-card * { color: #f0ece4 !important; }
.ofz-section-light .ofz-cert-card .ofz-cert-title { color: #f0ece4 !important; font-weight: 500; }
.ofz-section-light .ofz-cert-card .ofz-cert-desc { color: #a0998f !important; font-size: 13px; line-height: 1.6; }

/* Instructor card bullet list strong - dark text on cream bg */
.ofz-section-light .ofz-item-list li strong,
.ofz-section-light .ofz-grid-2 .ofz-item-list strong { color: #2a2520 !important; font-weight: 600; }
.ofz-section-light .ofz-item-list li { color: #5a5550 !important; }


/* CTA 金色區塊 - 文字改為深色 */
.ofz-cta,
.ofz-cta * { color: #1a1a1a !important; }
.ofz-cta .ofz-small-label { color: #5a3a28 !important; letter-spacing: 2px; font-weight: 600; }
.ofz-cta h2,
.ofz-cta h2 em,
.ofz-cta h3 { color: #1a1a1a !important; }
.ofz-cta p { color: #2a2520 !important; }
.ofz-cta a:not(.ofz-btn) { color: #1a1a1a !important; text-decoration: underline; }
.ofz-cta .ofz-btn { color: #f0ece4 !important; background: #1a1a1a !important; }
.ofz-cta .ofz-btn:hover { background: #2a2520 !important; }


/* High-spec CTA 金色區塊 fixes (beats [class*=-label] rule) */
.ofz-page .ofz-cta .ofz-small-label,
.entry-content .ofz-cta .ofz-small-label { color: #5a3a28 !important; letter-spacing: 2px; }

/* CTA bottom button (no class, just A tag with dark bg) - light text */
.ofz-page .ofz-cta a,
.ofz-cta > a,
.ofz-cta a:link { color: #f0ece4 !important; background: #1a1a1a !important; padding: 14px 28px; display: inline-block; text-decoration: none; letter-spacing: 1px; transition: all 0.3s ease; }
.ofz-page .ofz-cta a:hover { color: #d4b47a !important; background: #2a2520 !important; }


/* 文章頁面 - 隱藏自動生成的 page title (我們用 hero 內的 h1) */
.page-id-784 .wp-block-post-title { display: none !important; }
.page-id-784 main > .wp-block-group:first-child:has(.wp-block-post-title) { padding: 0 !important; margin: 0 !important; min-height: 0 !important; }


/* 文章列表頁 - 卸件卡片設計 */
.page-id-784 .wp-block-query .wp-block-group {
  background: #15110d !important;
  border: 1px solid rgba(196, 164, 95, 0.15) !important;
  border-radius: 6px !important;
  transition: all 0.3s ease !important;
}
.page-id-784 .wp-block-query .wp-block-group:hover {
  border-color: rgba(196, 164, 95, 0.5) !important;
  transform: translateY(-2px) !important;
}
.page-id-784 .wp-block-post-date,
.page-id-784 .wp-block-query .wp-block-post-date {
  font-size: 12px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #c4a45f !important;
  margin-bottom: 14px !important;
  display: block !important;
}
.page-id-784 .wp-block-post-title,
.page-id-784 .wp-block-query .wp-block-post-title,
.page-id-784 .wp-block-query h2 {
  display: block !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  color: #f0ece4 !important;
  margin: 0 0 14px 0 !important;
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
}
.page-id-784 .wp-block-post-title a {
  color: #f0ece4 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.page-id-784 .wp-block-post-title a:hover {
  color: #d4b47a !important;
}
.page-id-784 .wp-block-post-excerpt p {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #a0998f !important;
  margin: 0 0 16px 0 !important;
}
.page-id-784 .wp-block-post-excerpt__more-link {
  color: #c4a45f !important;
  text-decoration: none !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  border-bottom: 1px solid rgba(196, 164, 95, 0.4) !important;
  padding-bottom: 2px !important;
  display: inline-block !important;
}
.page-id-784 .wp-block-post-excerpt__more-link:hover {
  color: #d4b47a !important;
  border-bottom-color: #d4b47a !important;
}
.page-id-784 .ofz-page-hero {
  padding-top: 120px !important;
  padding-bottom: 60px !important;
}


/* === 文章頁 hero 置中 + 縮小 h1 === */
.page-id-784 .ofz-page-hero {
  text-align: center !important;
  padding: 120px 24px 80px !important;
}
.page-id-784 .ofz-page-hero-inner {
  text-align: center !important;
  max-width: 800px !important;
  margin: 0 auto !important;
}
.page-id-784 .ofz-page-hero h1 {
  font-size: 56px !important;
  line-height: 1.2 !important;
  margin: 0 auto 24px !important;
  text-align: center !important;
}
.page-id-784 .ofz-page-hero .ofz-kicker {
  display: block !important;
  text-align: center !important;
  margin-bottom: 24px !important;
}
.page-id-784 .ofz-page-hero-sub,
.page-id-784 .ofz-page-hero p {
  text-align: center !important;
  margin: 24px auto 0 !important;
  max-width: 600px !important;
  color: #a0998f !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
}

/* === 頁尾統一重設計 (以首頁風格為準) === */

/* 隱藏「需要協助？」為首的導覽列欄 */
footer.site-footer-container .wp-block-columns > .wp-block-column:first-child {
  display: none !important;
}

/* 3 欄置中 + 間距 */
footer.site-footer-container .wp-block-columns {
  justify-content: center !important;
  gap: 80px !important;
}
footer.site-footer-container .wp-block-column {
  text-align: center !important;
  flex: 0 1 260px !important;
}

/* 標籤 (h4) — 銅色 + letter-spacing */
footer.site-footer-container h4,
footer.site-footer-container .wp-block-heading {
  color: #b8755c !important;
  font-size: 13px !important;
  letter-spacing: 6px !important;
  font-weight: 400 !important;
  margin: 0 0 32px 0 !important;
  text-align: center !important;
  text-transform: none !important;
  font-family: 'Noto Sans TC', sans-serif !important;
}

/* 地址與文字 - 置中 + 柔和米色 + 無邊框 */
footer.site-footer-container p {
  color: #d4cdc1 !important;
  font-size: 14px !important;
  text-align: center !important;
  margin: 10px auto !important;
  letter-spacing: 1px !important;
  background: transparent !important;
  border: none !important;
}

/* 去除任何 input 與 button 預設邊框 */
footer.site-footer-container input,
footer.site-footer-container button {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* ofzbeautyacademy.com 連結 — 米色 + 下劃線 */
footer.site-footer-container a[href*="ofzbeautyacademy.com"] {
  color: #d4cdc1 !important;
  text-decoration: underline !important;
  text-underline-offset: 6px !important;
  text-decoration-thickness: 1px !important;
}

/* Social icons 置中 */
footer.site-footer-container .wp-block-social-links {
  justify-content: center !important;
  margin: 0 auto !important;
}

/* Email input — 無邊框 + 透明背景 + 下劃線 */
footer.site-footer-container input[type="email"] {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(184, 117, 92, 0.3) !important;
  text-align: center !important;
  color: #a0998f !important;
  padding: 10px 0 !important;
  font-size: 14px !important;
  width: 100% !important;
  max-width: 240px !important;
  display: block !important;
  margin: 0 auto !important;
}

/* SUBSCRIBE button — outlined 銅色 */
footer.site-footer-container button[type="submit"],
footer.site-footer-container .wp-block-jetpack-subscriptions__button,
footer.site-footer-container button {
  background: transparent !important;
  border: 1px solid #b8755c !important;
  color: #b8755c !important;
  padding: 12px 36px !important;
  letter-spacing: 4px !important;
  font-size: 12px !important;
  margin: 24px auto 0 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
}
footer.site-footer-container button:hover {
  background: #b8755c !important;
  color: #0a0806 !important;
}


/* 移除頁尾 h4 的重複 ::after pseudo-element */
footer.site-footer-container h4::before,
footer.site-footer-container h4::after,
footer.site-footer-container .wp-block-heading::before,
footer.site-footer-container .wp-block-heading::after {
  content: none !important;
  display: none !important;
}

/* 也移除 columns 部分的 pseudo-elements */
footer.site-footer-container .wp-block-column::before,
footer.site-footer-container .wp-block-column::after {
  content: none !important;
  display: none !important;
}


/* 移除 聯絡我們 h4 的多餘邊框 */
footer.site-footer-container h4.has-border-color,
footer.site-footer-container h4 {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}


/* === 標題小一點到適中大小 === */
.ofz-page-hero h1,
.ofz-page-hero h2 {
  font-size: clamp(40px, 6vw, 64px) !important;
  line-height: 1.15 !important;
}
.ofz-section h2 {
  font-size: clamp(32px, 4.5vw, 48px) !important;
  line-height: 1.2 !important;
}
.ofz-section h3 {
  font-size: clamp(24px, 3.5vw, 36px) !important;
  line-height: 1.3 !important;
}
.ofz-cta h2 {
  font-size: clamp(36px, 5vw, 52px) !important;
  line-height: 1.2 !important;
}
.page-id-784 .ofz-page-hero h1 {
  font-size: clamp(36px, 5vw, 52px) !important;
}


/* === 關於頁 - 随教師/認證/教學理念整合 === */

/* Hide auto-rendered page title on about-zh */
.page-id-564 .wp-block-post-title { display: none !important; }

/* Teachers grid - 4 columns */
.ofz-teachers-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 32px !important;
  max-width: 1280px !important;
  margin: 60px auto 0 !important;
  padding: 0 24px !important;
}
@media (max-width: 1024px) {
  .ofz-teachers-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 600px) {
  .ofz-teachers-grid { grid-template-columns: 1fr !important; }
}
.ofz-teacher-card {
  background: transparent !important;
  display: flex !important;
  flex-direction: column !important;
}
.ofz-teacher-photo-wrap {
  width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  overflow: hidden !important;
  border-radius: 4px !important;
  margin-bottom: 20px !important;
  background: #1a1a1a !important;
}
.ofz-teacher-photo-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.ofz-teacher-info { padding: 0 4px !important; }
.ofz-teacher-name {
  font-size: 20px !important;
  font-weight: 400 !important;
  color: #f0ece4 !important;
  margin: 0 0 8px 0 !important;
  letter-spacing: 1px !important;
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
}
.ofz-teacher-title {
  font-size: 12px !important;
  letter-spacing: 2px !important;
  color: #c4a45f !important;
  margin: 0 0 16px 0 !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}
.ofz-teacher-bio {
  font-size: 13px !important;
  line-height: 1.7 !important;
  color: #a0998f !important;
  margin: 0 !important;
}

/* Credentials grid - 5 items in flex */
.ofz-certs-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 24px !important;
  max-width: 1280px !important;
  margin: 60px auto 0 !important;
  padding: 0 24px !important;
}
.ofz-cert-card {
  background: rgba(196, 164, 95, 0.04) !important;
  border: 1px solid rgba(196, 164, 95, 0.18) !important;
  border-radius: 4px !important;
  padding: 30px 24px !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
}
.ofz-cert-card:hover {
  border-color: rgba(196, 164, 95, 0.5) !important;
  background: rgba(196, 164, 95, 0.08) !important;
  transform: translateY(-2px) !important;
}
.ofz-cert-icon {
  font-size: 18px !important;
  color: #c4a45f !important;
  margin-bottom: 18px !important;
  display: block !important;
}
.ofz-cert-title {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #f0ece4 !important;
  letter-spacing: 1px !important;
  margin: 0 0 12px 0 !important;
  line-height: 1.4 !important;
}
.ofz-cert-desc {
  font-size: 12px !important;
  color: #a0998f !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* Mission/Values grid - 3 cols 2x2 */
.ofz-grid-2 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 40px !important;
  max-width: 1100px !important;
  margin: 60px auto 0 !important;
}
@media (max-width: 768px) { .ofz-grid-2 { grid-template-columns: 1fr !important; } }
.ofz-grid-2 > div { padding: 24px !important; background: rgba(196, 164, 95, 0.04) !important; border-left: 2px solid #c4a45f !important; }
.ofz-grid-2 h4, .ofz-grid-2 strong { color: #f0ece4 !important; font-size: 16px !important; font-weight: 500 !important; margin: 0 0 8px 0 !important; display: block !important; }
.ofz-grid-2 p, .ofz-grid-2 li { color: #a0998f !important; font-size: 14px !important; line-height: 1.7 !important; }


/* === 隱藏文章頁/關於頁頂部多餘的 separator hr 與 group wrapper === */
.page-id-784 main > .wp-block-group:first-child,
.page-id-564 main > .wp-block-group:first-child {
  display: none !important;
}
.page-id-784 .wp-block-separator,
.page-id-564 .wp-block-separator {
  display: none !important;
}
.page-id-784 main > .wp-block-group:has(.wp-block-post-title),
.page-id-564 main > .wp-block-group:has(.wp-block-post-title) {
  display: none !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}


/* === 移除 nav header 上下的多餘邊框線條 === */
.wp-block-group.alignfull.wc-blocks-pattern-header,
.wp-block-group.alignfull.wc-blocks-pattern-header > * ,
.wp-block-group.alignfull.wc-blocks-pattern-header .wp-block-group {
  border: none !important;
  border-bottom: none !important;
  border-top: none !important;
}

/* 亦移除任何 header 內部的 邊框 */
header .wp-block-group {
  border: none !important;
}
header {
  border-bottom: none !important;
}


/* === 全面移除 nav header 區域的金色邊框 === */
[class*="wc-blocks-pattern-header"],
[class*="wc-blocks-pattern-header"] * ,
[class*="wc-blocks-pattern-header"] .wp-block-group {
  border-top: none !important;
  border-bottom: none !important;
  border: none !important;
}

/* 以防万一：全部移除長得像金色 0.2 透明邊框的 element */
header .wp-block-group,
header > div,
header > * {
  border: 0 !important;
}


/* === 縮小 site logo 不要凸出 nav === */
.custom-logo,
img.custom-logo {
  max-height: 36px !important;
  width: auto !important;
  height: 36px !important;
}
.custom-logo-link {
  display: flex !important;
  align-items: center !important;
  height: auto !important;
}


/* === 最強勢最後手段 - 所有 nav header 子孫邊框全部 0 === */
body header .wp-block-group,
body header .wp-block-group.is-nowrap,
body header .wp-block-group.is-layout-flex,
body header [class*="wc-blocks-pattern-header"],
body header [class*="wc-blocks-pattern-header"] *,
body header [class*="wp-container-core-group"],
body [class*="template-part"] [class*="wp-container"] {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-style: none !important;
}


/* === 隱藏 nav 中間的 site logo (品牌已在頂部 tagline 顯示) === */
.custom-logo,
.custom-logo-link,
.wp-block-site-logo {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* === 課程頁 hero 模仿首頁風格，但全部一樣颜色 === */
.phi-page-hero {
  background: transparent !important;
  padding: 100px 24px 80px !important;
  text-align: center !important;
}
.phi-page-hero-inner {
  text-align: center !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}
.phi-page-hero h1 {
  font-size: clamp(48px, 7vw, 88px) !important;
  line-height: 1.15 !important;
  color: #f0ece4 !important;
  font-family: 'Cormorant Garamond', 'Playfair Display', 'Noto Serif TC', serif !important;
  font-weight: 400 !important;
  letter-spacing: 2px !important;
  margin: 24px auto !important;
  text-align: center !important;
}
.phi-page-hero h1 em,
.phi-page-hero h1 i,
.phi-page-hero h1 strong {
  color: #f0ece4 !important;
  font-style: normal !important;
  font-weight: inherit !important;
  font-family: inherit !important;
}
.phi-page-hero .phi-kicker,
.phi-page-hero .ofz-kicker {
  display: block !important;
  text-align: center !important;
  color: #b8755c !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  margin-bottom: 24px !important;
}
.phi-page-hero p,
.phi-page-hero-sub {
  text-align: center !important;
  max-width: 640px !important;
  margin: 24px auto 0 !important;
  color: #a0998f !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
}


/* === 複製首頁 hero 光暈 (linear-gradient 對角從冷暗到暖棕) === */
.phi-page-hero {
  background: linear-gradient(145deg, rgb(20, 16, 14) 0%, rgb(30, 27, 25) 35%, rgb(42, 31, 28) 68%, rgb(61, 42, 36) 100%) !important;
  position: relative !important;
  min-height: 60vh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 120px 24px 100px !important;
}

/* 關於頁 hero 也一起套用同樣光暈 */
.page-id-564 .ofz-page-hero,
.page-id-784 .ofz-page-hero {
  background: linear-gradient(145deg, rgb(20, 16, 14) 0%, rgb(30, 27, 25) 35%, rgb(42, 31, 28) 68%, rgb(61, 42, 36) 100%) !important;
  position: relative !important;
  min-height: 50vh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}


/* === 課程/關於/文章 hero h1 再縮小 === */
.phi-page-hero h1 {
  font-size: clamp(36px, 4.5vw, 56px) !important;
  letter-spacing: 4px !important;
  margin: 20px auto !important;
}
.page-id-564 .ofz-page-hero h1,
.page-id-784 .ofz-page-hero h1 {
  font-size: clamp(32px, 4vw, 48px) !important;
  letter-spacing: 3px !important;
}


/* === 課程頁 COURSES 章節標題 · 縮小到首頁 h2 一樣大小 (48px) === */
.ofz-courses-header h2,
.phi-page-section h2,
.ofz-courses-header h2 em {
  font-size: clamp(28px, 3.5vw, 48px) !important;
  line-height: 1.25 !important;
  letter-spacing: 1px !important;
}
.ofz-courses-header h2 {
  color: #f0ece4 !important;
  font-weight: 400 !important;
  margin: 16px 0 24px !important;
}
.ofz-courses-header h2 em {
  color: #d4b47a !important;
  font-style: italic !important;
}
.ofz-courses-header .phi-kicker,
.ofz-courses-header .ofz-kicker {
  color: #b8755c !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
}
.ofz-courses-header p {
  color: #a0998f !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  max-width: 720px !important;
}


/* === 課程頁 h2 的學習方式: 玫瑰金、無斜體 === */
.ofz-courses-header h2 em,
.ofz-courses-header h2 .ofz-rose-text,
.phi-page-section h2 em {
  color: #d89a80 !important;
  font-style: normal !important;
  font-weight: 400 !important;
}


/* === 思源宋體 (Noto Serif TC) 全站主字體 === */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,400;1,500&family=Noto+Serif+TC:wght@300;400;500;600&display=swap');

/* 全站預設中文字體 - 思源宋體 Light */
body,
body *,
body p,
body li,
body a,
body span,
body td,
body th,
body input,
body button,
body label {
  font-family: 'Noto Serif TC', 'Cormorant Garamond', "思源宋體", serif !important;
  font-weight: 300 !important;
}

/* 標題用 Medium (500) - 保持重量感 */
body h1, body h2, body h3, body h4, body h5, body h6,
body .wp-block-heading,
body .ofz-page-hero h1,
body .phi-page-hero h1 {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  font-weight: 400 !important;
}

/* 中文標題細一點更優雅 */
body h1 em, body h2 em, body h3 em {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  font-weight: 400 !important;
}

/* 加粗 strong 與 button 使用 Medium */
body strong,
body b,
body button,
body .ofz-btn,
body [class*="btn-"] {
  font-weight: 500 !important;
}

/* nav 領航使用 Regular */
body nav,
body .wp-block-navigation,
body .wp-block-navigation a {
  font-weight: 400 !important;
  letter-spacing: 1px;
}


/* === 強制全站 思源宋體 · 全面覆蓋 === */
html, body,
html body *,
.wp-site-blocks,
.wp-site-blocks *,
main, main *,
footer, footer *,
header, header *,
nav, nav *,
div, p, span, li, td, th, a, label, input, button, textarea, select, h1, h2, h3, h4, h5, h6, em, strong, small {
  font-family: 'Noto Serif TC', 'Cormorant Garamond', "思源宋體", serif !important;
}

/* 內文輕量感 - Light 300 */
body, body p, body li, body span, body td, body a {
  font-weight: 300 !important;
}

/* 標題保持 Regular 400 */
h1, h2, h3, h4, h5, h6 {
  font-weight: 400 !important;
}

/* 加粗 Medium 500 */
strong, b, button, .ofz-btn, [class*='btn-'] {
  font-weight: 500 !important;
}


/* === 勝過主題 Montserrat 的高特異性覆蓋 === */
body.wp-singular .wp-block-navigation a,
html body .wp-block-navigation a,
html body .wp-block-navigation__container a,
html body footer a,
html body footer p,
html body footer h4,
html body footer,
html body footer * {
  font-family: 'Noto Serif TC', "思源宋體", serif !important;
}

/* body 本身也改 */
html body,
html.wp-toolbar body,
body.wp-singular {
  font-family: 'Noto Serif TC', "思源宋體", serif !important;
  font-weight: 300 !important;
}


/* === CURRICULUM 区塊 (課程頁) · 縮小與玫瑰金 === */
.phi-section-light .phi-grid-2 h2,
.phi-section-light h2,
.phi-section h2 {
  font-size: clamp(32px, 4vw, 48px) !important;
  line-height: 1.25 !important;
  letter-spacing: 1px !important;
  margin: 16px 0 24px !important;
}
.phi-section-light .phi-grid-2 h2 em,
.phi-section-light h2 em,
.phi-section h2 em {
  color: #d89a80 !important;
  font-weight: 400 !important;
}


/* === CTA Band em → 玫瑰金統一 === */
html body .phi-cta-inner h2 em {
  color: #d89a80 !important;
  font-style: normal !important;
}
html body .phi-cta-inner h2 {
  font-size: clamp(28px, 3.2vw, 44px) !important;
  line-height: 1.3 !important;
}

/* === CURRICULUM h2 縮小 + em 玫瑰金（保險再加一次） === */
html body .phi-section-light h2,
html body .phi-section h2 {
  font-size: clamp(32px, 4vw, 48px) !important;
  line-height: 1.25 !important;
  letter-spacing: 1px !important;
}
html body .phi-section-light h2 em,
html body .phi-section h2 em {
  color: #d89a80 !important;
  font-weight: 400 !important;
  font-style: normal !important;
}


/* === 關於頁 em 統一玫瑰金 + h2 縮小 === */
.page-id-564 h1 em,
.page-id-564 h2 em,
.page-id-564 h3 em {
  color: #d89a80 !important;
  font-style: normal !important;
  font-weight: 400 !important;
}
.page-id-564 .phi-page-hero h1 {
  font-size: clamp(36px, 4.5vw, 60px) !important;
  line-height: 1.25 !important;
}
.page-id-564 .phi-page-hero h2,
.page-id-564 .phi-section h2,
.page-id-564 .phi-section-light h2 {
  font-size: clamp(28px, 3.5vw, 44px) !important;
  line-height: 1.3 !important;
  letter-spacing: 1px !important;
}


/* === 關於頁 h1/h2 縮小 - 2026 === */
html body.page-id-564 h1,
html body.page-id-564 main h1 {
  font-size: clamp(34px, 4.5vw, 56px) !important;
  line-height: 1.25 !important;
}
html body.page-id-564 h2,
html body.page-id-564 main h2 {
  font-size: clamp(28px, 3.5vw, 44px) !important;
  line-height: 1.3 !important;
  letter-spacing: 1px !important;
}
