/**
 * SBV ↔ Avada integration 0.3.0
 * Release 03: globale Harmonisierung mit dem neuen SBV Site Shell.
 */
body.sbv-site .fusion-button,
body.sbv-site a.fusion-button {
  min-height: var(--sbv-control-height);
  border-radius: var(--sbv-radius-md);
}

body.sbv-site .fusion-button:focus-visible,
body.sbv-site a.fusion-button:focus-visible {
  outline: 3px solid var(--sbv-focus);
  outline-offset: 3px;
}

body.sbv-site .fusion-form-field label {
  color: var(--sbv-ink);
  font-weight: 700;
}

body.sbv-site :where(.fusion-form-input, .fusion-form-select-wrapper select, textarea) {
  min-height: var(--sbv-control-height);
  border-color: var(--sbv-border-strong);
  border-radius: var(--sbv-radius-sm);
}

body.sbv-site .fusion-form-field.error :where(input, select, textarea) {
  border-color: var(--sbv-error);
}

body.sbv-site .fusion-alert {
  border-radius: var(--sbv-radius-md);
}

body.sbv-site .fusion-post-cards {
  --awb-column-spacing: var(--sbv-space-6);
}

/* Utility classes für Avada Containers/Columns */
.sbv-avada-section > .fusion-row {
  width: min(calc(100% - (2 * var(--sbv-gutter))), var(--sbv-content-width));
  max-width: none;
}

.sbv-avada-section-wide > .fusion-row {
  width: min(calc(100% - (2 * var(--sbv-gutter))), var(--sbv-content-wide));
  max-width: none;
}

.sbv-avada-reading > .fusion-row {
  width: min(calc(100% - (2 * var(--sbv-gutter))), var(--sbv-reading-width));
  max-width: none;
}

.sbv-avada-section {
  padding-block: var(--sbv-section-space) !important;
}

.sbv-avada-section-compact {
  padding-block: clamp(2.25rem, 1.6rem + 2vw, 4rem) !important;
}

.sbv-avada-surface-subtle { background-color: var(--sbv-surface-subtle) !important; }
.sbv-avada-surface-dark { background-color: var(--sbv-surface-dark) !important; color: #fff; }

/* Avoid visually lost focus within Avada off-canvas/mobile UI */
.sbv-site :where(.awb-menu__main-a, .awb-menu__open-nav-submenu_mobile, .fusion-open-nav-submenu, .fusion-mobile-menu-icons a):focus-visible {
  outline: 3px solid var(--sbv-focus) !important;
  outline-offset: 3px;
}
