
/* 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; }
