/* =============================================== */
/* SCOPED RICH TEXT HEADING STYLES - Add to Fluent Snippets */
/* Only applies to Rich Text content inside .rich-text-ct containers */
/* =============================================== */

/* Target Rich Text elements specifically inside rich-text-ct containers */
.rich-text-ct .brxe-text h1,
.rich-text-ct .brxe-shortcode h1 {
  font-family: var(--font-display) !important;
  font-size: var(--text-display-lg) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-tight) !important;
  letter-spacing: var(--letter-sm) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-2xl) !important;
  margin-top: var(--space-4xl) !important;
}

.rich-text-ct .brxe-text h1:first-child,
.rich-text-ct .brxe-shortcode h1:first-child {
  margin-top: 0 !important;
}

.rich-text-ct .brxe-text h2,
.rich-text-ct .brxe-shortcode h2 {
  font-family: var(--font-display) !important;
  font-size: var(--text-display-md) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-tight) !important;
  letter-spacing: var(--letter-sm) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-xl) !important;
  margin-top: var(--space-3xl) !important;
}

.rich-text-ct .brxe-text h2:first-child,
.rich-text-ct .brxe-shortcode h2:first-child {
  margin-top: 0 !important;
}

.rich-text-ct .brxe-text h3,
.rich-text-ct .brxe-shortcode h3 {
  font-family: var(--font-display) !important;
  font-size: var(--text-display-sm) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-tight) !important;
  letter-spacing: var(--letter-sm) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-xl) !important;
  margin-top: var(--space-3xl) !important;
}

.rich-text-ct .brxe-text h3:first-child,
.rich-text-ct .brxe-shortcode h3:first-child {
  margin-top: 0 !important;
}

.rich-text-ct .brxe-text h4,
.rich-text-ct .brxe-shortcode h4 {
  font-family: var(--font-display) !important;
  font-size: var(--text-display-xs) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-normal) !important;
  letter-spacing: var(--letter-normal) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-lg) !important;
  margin-top: var(--space-2xl) !important;
}

.rich-text-ct .brxe-text h4:first-child,
.rich-text-ct .brxe-shortcode h4:first-child {
  margin-top: 0 !important;
}

.rich-text-ct .brxe-text h5,
.rich-text-ct .brxe-shortcode h5 {
  font-family: var(--font-display) !important;
  font-size: var(--text-display-xxs) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-normal) !important;
  letter-spacing: var(--letter-normal) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-lg) !important;
  margin-top: var(--space-2xl) !important;
}

.rich-text-ct .brxe-text h5:first-child,
.rich-text-ct .brxe-shortcode h5:first-child {
  margin-top: 0 !important;
}

.rich-text-ct .brxe-text h6,
.rich-text-ct .brxe-shortcode h6 {
  font-family: var(--font-body) !important;
  font-size: var(--text-lg) !important;
  font-weight: var(--weight-semibold) !important;
  line-height: var(--line-normal) !important;
  letter-spacing: var(--letter-normal) !important;
  color: var(--text-primary) !important;
  margin-bottom: var(--space-md) !important;
  margin-top: var(--space-xl) !important;
}

.rich-text-ct .brxe-text h6:first-child,
.rich-text-ct .brxe-shortcode h6:first-child {
  margin-top: 0 !important;
}

/* =============================================== */
/* SCOPED RICH TEXT PARAGRAPH STYLES */
/* =============================================== */

.rich-text-ct .brxe-text p,
.rich-text-ct .brxe-shortcode p {
  font-family: var(--font-body) !important;
  font-size: var(--text-md) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-normal) !important;
  letter-spacing: var(--letter-normal) !important;
  color: var(--text-tertiary) !important;
  margin-bottom: var(--space-lg) !important;
}

.rich-text-ct .brxe-text p:last-child,
.rich-text-ct .brxe-shortcode p:last-child {
  margin-bottom: 0 !important;
}

/* Handle empty paragraphs (with &nbsp;) */
.rich-text-ct .brxe-text p:empty,
.rich-text-ct .brxe-text p:has(br:only-child),
.rich-text-ct .brxe-shortcode p:empty,
.rich-text-ct .brxe-shortcode p:has(br:only-child) {
  margin-bottom: var(--space-sm) !important;
  height: var(--space-sm) !important;
}

/* =============================================== */
/* SCOPED RICH TEXT LIST STYLES */
/* =============================================== */

.rich-text-ct .brxe-text ul,
.rich-text-ct .brxe-text ol,
.rich-text-ct .brxe-shortcode ul,
.rich-text-ct .brxe-shortcode ol {
  font-family: var(--font-body) !important;
  font-size: var(--text-md) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-normal) !important;
  letter-spacing: var(--letter-normal) !important;
  color: var(--text-tertiary) !important;
  margin-bottom: var(--space-lg) !important;
  margin-top: var(--space-lg) !important;
  padding-left: var(--space-2xl) !important;
}

.rich-text-ct .brxe-text li,
.rich-text-ct .brxe-shortcode li {
  margin-bottom: var(--space-sm) !important;
}

.rich-text-ct .brxe-text li:last-child,
.rich-text-ct .brxe-shortcode li:last-child {
  margin-bottom: 0 !important;
}

/* =============================================== */
/* SCOPED RICH TEXT LINK STYLES */
/* =============================================== */

.rich-text-ct .brxe-text a,
.rich-text-ct .brxe-shortcode a {
  color: var(--text-brand-tertiary) !important;
  text-decoration: underline !important;
  transition: color 0.2s ease !important;
}

.rich-text-ct .brxe-text a:hover,
.rich-text-ct .brxe-shortcode a:hover {
  color: var(--text-brand-secondary_hover) !important;
}

/* =============================================== */
/* SCOPED RICH TEXT MISC STYLES */
/* =============================================== */

.rich-text-ct .brxe-text strong,
.rich-text-ct .brxe-text b,
.rich-text-ct .brxe-shortcode strong,
.rich-text-ct .brxe-shortcode b {
  font-weight: var(--weight-semibold) !important;
}

.rich-text-ct .brxe-text em,
.rich-text-ct .brxe-text i,
.rich-text-ct .brxe-shortcode em,
.rich-text-ct .brxe-shortcode i {
  font-style: italic !important;
}

.rich-text-ct .brxe-text blockquote,
.rich-text-ct .brxe-shortcode blockquote {
  border-left: 4px solid var(--border-brand) !important;
  padding-left: var(--space-xl) !important;
  margin: var(--space-2xl) 0 !important;
  font-style: italic !important;
  color: var(--text-secondary) !important;
}

/* =============================================== */
/* MOBILE RESPONSIVE ADJUSTMENTS */
/* =============================================== */

@media (max-width: 768px) {
  .rich-text-ct .brxe-text h1,
  .rich-text-ct .brxe-shortcode h1 {
    font-size: var(--text-display-md) !important;
    margin-top: var(--space-3xl) !important;
    margin-bottom: var(--space-xl) !important;
  }
  
  .rich-text-ct .brxe-text h2,
  .rich-text-ct .brxe-shortcode h2 {
    font-size: var(--text-display-sm) !important;
    margin-top: var(--space-2xl) !important;
    margin-bottom: var(--space-lg) !important;
  }
  
  .rich-text-ct .brxe-text h3,
  .rich-text-ct .brxe-shortcode h3 {
    font-size: var(--text-display-xs) !important;
    margin-top: var(--space-2xl) !important;
    margin-bottom: var(--space-lg) !important;
  }
}