/**
 * Theme design defaults for Elementor content.
 *
 * Theme owns fonts and type scale. Elementor Site Settings owns colors.
 * Elementor also owns layout/structure. Drop a widget → type is on-brand;
 * colors follow Site Settings globals (theme tokens as fallback only).
 *
 * No !important. Explicit widget styles in the editor still win.
 */

/* Typography globals → theme (ignore Site Settings type) */
body.elementor-default {
  --e-global-typography-primary-font-family: var(--font-body);
  --e-global-typography-primary-font-weight: 700;

  --e-global-typography-secondary-font-family: var(--font-body);
  --e-global-typography-secondary-font-weight: 600;

  --e-global-typography-text-font-family: var(--font-body);
  --e-global-typography-text-font-weight: 400;

  --e-global-typography-accent-font-family: var(--font-body);
  --e-global-typography-accent-font-weight: 600;
}

/* —— Headings —— */
.elementor-widget-heading .elementor-heading-title {
  font-family: var(--font-body);
  font-weight: 700;
  color: var(--e-global-color-primary, var(--color-primary));
  margin: 0;
}

.elementor-widget-heading h1.elementor-heading-title {
  font-size: var(--h1-size);
  line-height: var(--h1-leading);
  font-weight: 700;
}

.elementor-widget-heading h2.elementor-heading-title {
  font-size: var(--h2-size);
  line-height: var(--h2-leading);
  font-weight: 700;
}

.elementor-widget-heading h3.elementor-heading-title {
  font-size: var(--h3-size);
  line-height: var(--h3-leading);
  font-weight: 700;
}

.elementor-widget-heading h4.elementor-heading-title {
  font-size: var(--h4-size);
  line-height: var(--h4-leading);
  font-weight: 600;
}

.elementor-widget-heading h5.elementor-heading-title {
  font-size: var(--h5-size);
  line-height: var(--h5-leading);
  font-weight: 600;
}

.elementor-widget-heading h6.elementor-heading-title {
  font-size: var(--h6-size);
  line-height: var(--h6-leading);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* —— Body copy (set once on the widget; paragraphs inherit — no double leading) —— */
.elementor-widget-text-editor,
.elementor-widget-theme-post-content {
  font-family: var(--font-body);
  font-size: var(--text-size);
  font-weight: 400;
  line-height: var(--text-leading);
  color: var(--e-global-color-text, var(--color-text));
}

.elementor-widget-text-editor p,
.elementor-widget-theme-post-content p {
  margin: 0 0 1em;
}

.elementor-widget-text-editor p:last-child,
.elementor-widget-theme-post-content p:last-child {
  margin-bottom: 0;
}

.elementor-widget-text-editor a,
.elementor-widget-theme-post-content a {
  color: var(--e-global-color-primary, var(--color-primary));
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.elementor-widget-text-editor a:hover,
.elementor-widget-text-editor a:focus-visible,
.elementor-widget-theme-post-content a:hover,
.elementor-widget-theme-post-content a:focus-visible {
  color: var(--color-primary-hover);
}

/* —— Buttons (theme chrome; kit Theme Style → Buttons is disabled) —— */
.elementor-widget-button .elementor-button {
  font-family: var(--font-body);
  font-weight: 700;
  font-size: var(--text-size);
  line-height: var(--text-leading);
  background-color: var(--e-global-color-primary, var(--color-primary));
  color: var(--color-surface);
  border: none;
  border-radius: var(--radius-component);
  padding: 0.8rem 1.4rem;
  fill: var(--color-surface);
}

.elementor-widget-button .elementor-button:hover,
.elementor-widget-button .elementor-button:focus {
  background-color: var(--color-primary-hover);
  color: var(--color-surface);
  fill: var(--color-surface);
}

/* —— Icon list —— */
.elementor-widget-icon-list .elementor-icon-list-item,
.elementor-widget-icon-list .elementor-icon-list-text {
  font-family: var(--font-body);
  font-size: var(--text-size);
  line-height: var(--text-leading);
  color: var(--e-global-color-text, var(--color-text));
}

.elementor-widget-icon-list .elementor-icon-list-icon i,
.elementor-widget-icon-list .elementor-icon-list-icon svg {
  color: var(--e-global-color-primary, var(--color-primary));
  fill: var(--e-global-color-primary, var(--color-primary));
}
