/* ═══════════════════════════════════════════════════════
   GLOBAL TYPOGRAPHY — Playfair Display on all headings
   Applied site-wide; overrides Kadence defaults.
═══════════════════════════════════════════════════════ */

/* ── Smooth scrolling ───────────────────────────────── */
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--th, 38px) + var(--nh, 72px));
}

@media (max-width: 680px) {
  html { scroll-padding-top: var(--nh, 60px); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Course Page, Quran Teacher, Policies templates — full-width sections, no title banner */
.page-template-page-course-php .entry-hero,
.page-template-page-course-php .page-hero-section,
.page-template-page-quran-teacher-php .entry-hero,
.page-template-page-quran-teacher-php .page-hero-section,
.page-template-page-policies-php .entry-hero,
.page-template-page-policies-php .page-hero-section {
  display: none !important;
}
.page-template-page-course-php .content-area,
.page-template-page-course-php #content,
.page-template-page-course-php article.page,
.page-template-page-course-php .entry-content,
.page-template-page-quran-teacher-php .content-area,
.page-template-page-quran-teacher-php #content,
.page-template-page-quran-teacher-php article.page,
.page-template-page-quran-teacher-php .entry-content,
.page-template-page-policies-php .content-area,
.page-template-page-policies-php #content,
.page-template-page-policies-php article.page,
.page-template-page-policies-php .entry-content {
  max-width: none !important;
  padding:   0 !important;
  margin:    0 !important;
  width:     100% !important;
}
/* Button reset — overrides Kadence global button hover colour */
button.qa-hero-btn-primary,
button.qa-about-btn-primary,
button.qa-steps-btn-primary {
  font-family: inherit;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
}

button.qa-hero-btn-primary,
button.qa-steps-btn-primary {
  color: #fff !important;
  border: none !important;
  background: linear-gradient(135deg, #c9a227, #e4c060) !important;
}

button.qa-about-btn-primary,
button.qa-about-btn-primary:hover,
button.qa-about-btn-primary:focus {
  color: #fff !important;
  border: 2px solid #0d3d1a !important;
}

/* All native heading elements */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}

/* Hero heading + subheading paragraph */
.qa-hero-heading,
.qa-hero-subheading {
  font-family: 'Playfair Display', Georgia, serif;
  letter-spacing: -.3px;
}

/* About heading — tighter tracking than default */
.qa-about-heading { letter-spacing: -.3px; }

/* Arabic script text */
.qa-hero-arabic {
  font-family: 'Amiri', 'Traditional Arabic', 'Arial Unicode MS', serif;
}


/* ═══════════════════════════════════════════════════════
   SCROLL PROGRESS BAR
═══════════════════════════════════════════════════════ */
#qa-scroll-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #0d3d1a 0%, #c9a227 100%);
  transform-origin: left;
  transform: scaleX(0);
  z-index: 9999;
  pointer-events: none;
  will-change: transform;
}
