/* One family for the widget's text. Icon glyphs keep their icon-font declarations. */
.w3aw-font-selected { font-family: var(--w3aw-widget-font-family) !important; }
.w3aw-font-selected :is(.aitm-title, .w3aw-design-title, .w3aw-luna-title, .w3aw-luna-tagline,
  .w3aw-steps-title, .w3aw-steps-subtitle, .w3aw-steps-footer, .w3aw-step-number,
  .w3aw-step-heading, .w3aw-step-description, .w3aw-split-title, .w3aw-split-text) {
  font-family: var(--w3aw-widget-font-family) !important;
}
.w3aw-image-content.w3aw-font-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6, p,
  a, li, blockquote, strong, em, b, span:where(:not([class])), :where([style*="font-family"])) {
  font-family: var(--w3aw-widget-font-family) !important;
}
.w3aw-title-font-selected :is(.aitm-title, .w3aw-luna-title, .w3aw-steps-title, .w3aw-step-heading, .w3aw-split-title) {
  font-family: var(--w3aw-title-font-family) !important;
}
.w3aw-image-content.w3aw-title-font-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6),
.w3aw-image-content.w3aw-title-font-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6) :is(strong, em, b, a, span:not([class]), [style*="font-family"]) {
  font-family: var(--w3aw-title-font-family) !important;
}
/* Explicit optional sizes and weights take priority over the existing layout defaults. */
.w3aw-size-selected { font-size: var(--w3aw-widget-font-size) !important; }
.w3aw-size-selected :is(.aitm-title, .w3aw-design-title, .w3aw-luna-title, .w3aw-luna-tagline,
  .w3aw-steps-title, .w3aw-steps-subtitle, .w3aw-steps-footer, .w3aw-step-number,
  .w3aw-step-heading, .w3aw-step-description, .w3aw-split-title, .w3aw-split-text) {
  font-size: var(--w3aw-widget-font-size) !important;
}
.w3aw-image-content.w3aw-size-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6, p,
  a, li, blockquote, strong, em, b, span:where(:not([class])), :where([style*="font-size"])) {
  font-size: var(--w3aw-widget-font-size) !important;
}
.w3aw-title-size-selected :is(.aitm-title, .w3aw-luna-title, .w3aw-steps-title, .w3aw-step-heading, .w3aw-split-title) {
  font-size: var(--w3aw-title-font-size) !important;
}
.w3aw-image-content.w3aw-title-size-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6),
.w3aw-image-content.w3aw-title-size-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6) :is(strong, em, b, a, span:not([class]), [style*="font-size"]) {
  font-size: var(--w3aw-title-font-size) !important;
}
.w3aw-weight-selected { font-weight: var(--w3aw-widget-font-weight) !important; }
.w3aw-weight-selected :is(.aitm-title, .w3aw-design-title, .w3aw-luna-title, .w3aw-luna-tagline,
  .w3aw-steps-title, .w3aw-steps-title strong, .w3aw-steps-subtitle, .w3aw-steps-footer, .w3aw-step-number,
  .w3aw-step-heading, .w3aw-step-description, .w3aw-split-title, .w3aw-split-text) {
  font-weight: var(--w3aw-widget-font-weight) !important;
}
.w3aw-image-content.w3aw-weight-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6, p, li, blockquote) {
  font-weight: var(--w3aw-widget-font-weight) !important;
}
.w3aw-image-content.w3aw-weight-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6) :is(strong, em, b, a, span:not([class]), [style*="font-weight"]) {
  font-weight: var(--w3aw-widget-font-weight) !important;
}
.w3aw-title-weight-selected :is(.aitm-title, .w3aw-luna-title, .w3aw-steps-title, .w3aw-steps-title strong, .w3aw-step-heading, .w3aw-split-title) {
  font-weight: var(--w3aw-title-font-weight) !important;
}
.w3aw-image-content.w3aw-title-weight-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6),
.w3aw-image-content.w3aw-title-weight-selected .w3aw-split-text :is(h1, h2, h3, h4, h5, h6) :is(strong, em, b, a, span:not([class]), [style*="font-weight"]) {
  font-weight: var(--w3aw-title-font-weight) !important;
}
/* Keep the bookkeeping variant hidden; font weight has its own clearly labelled selector. */
.fusion-builder-option:is([data-option-id="w3aw_widget_font"], [data-option-id="w3aw_title_font"]) .fusion-builder-typography { display: none !important; }
