/* =========================================================
SNIPPET: 80 - BUTTON SYSTEM
FINAL / FAILSAFE / OWN BUTTON TOKENS / FULL FX BRIDGE

PRINZIP

* btn = Basis (immer setzen)
* Varianten: btn-primary / btn-outline / btn-ghost
* Größen: btn-xxs / btn-xs / btn-s / btn-m / btn-l
* Icon Gap: automatisch über Größe, optional per btn-ig-* überschreibbar
* Radius: ro-* / round-* / btn-pill
* FX: vollständige Bridge für Shadow-System auf .elementor-button

WICHTIG

* Dieses Snippet ist failsafe:
  Falls Button-Tokens fehlen oder nicht greifen, nutzen die Regeln eingebaute Fallback-Werte.
* Nutzung immer mit btn als Basis:
  btn btn-primary btn-m
  ========================================================= */

/* =========================================================
0) BRIDGE RESET
Wrapper-Schatten entfernen, damit nur der echte Button wirkt
========================================================= */
.elementor .elementor-widget-button:is(
.shadow, .shadow-s, .shadow-m, .shadow-l,
.sh, .sh-s, .sh-m, .sh-l,

.shadow-1, .shadow-2,
.shadow-1-s, .shadow-1-m, .shadow-1-l,
.shadow-2-s, .shadow-2-m, .shadow-2-l,
.sh-1, .sh-2,
.sh-1-s, .sh-1-m, .sh-1-l,
.sh-2-s, .sh-2-m, .sh-2-l,

.glo, .glo-s, .glo-m, .glo-l,
.glo-1, .glo-2,
.glo-1-s, .glo-1-m, .glo-1-l,
.glo-2-s, .glo-2-m, .glo-2-l,

.shadow-glow, .shadow-glow-s, .shadow-glow-m, .shadow-glow-l,
.shgl, .shgl-s, .shgl-m, .shgl-l,

.shadow-glow-1, .shadow-glow-2,
.shgl-1, .shgl-2,
.shgl-1-s, .shgl-1-m, .shgl-1-l,
.shgl-2-s, .shgl-2-m, .shgl-2-l,

.hover-shadow, .hover-shadow-s, .hover-shadow-m, .hover-shadow-l,
.hsh, .hsh-s, .hsh-m, .hsh-l,

.hover-shadow-1, .hover-shadow-2,
.hsh-1, .hsh-2,
.hsh-1-s, .hsh-1-m, .hsh-1-l,
.hsh-2-s, .hsh-2-m, .hsh-2-l,

.hover-glow, .hover-glow-s, .hover-glow-m, .hover-glow-l,
.hgl, .hgl-s, .hgl-m, .hgl-l,

.hover-glow-1, .hover-glow-2,
.hgl-1, .hgl-2,
.hgl-1-s, .hgl-1-m, .hgl-1-l,
.hgl-2-s, .hgl-2-m, .hgl-2-l,

.hshgl, .hshgl-s, .hshgl-m, .hshgl-l,
.hshgl-1, .hshgl-2,
.hshgl-1-s, .hshgl-1-m, .hshgl-1-l,
.hshgl-2-s, .hshgl-2-m, .hshgl-2-l,

.hover-lift-s, .hover-lift-m,
.hl-s, .hl-m
){
box-shadow: none !important;
}

/* =========================================================

1. FX BRIDGE
   Leitet Shadow-/Glow-/Hover-Effekte auf .elementor-button um
   ========================================================= */

/* --- Neutral Shadow --- */
.elementor .elementor-widget-button:is(.shadow,.sh,.shadow-m,.sh-m) .elementor-button{
box-shadow: var(--shadow-m) rgba(0,0,0,var(--shadow-alpha-m)) !important;
}
.elementor .elementor-widget-button:is(.shadow-s,.sh-s) .elementor-button{
box-shadow: var(--shadow-s) rgba(0,0,0,var(--shadow-alpha-s)) !important;
}
.elementor .elementor-widget-button:is(.shadow-l,.sh-l) .elementor-button{
box-shadow: var(--shadow-l) rgba(0,0,0,var(--shadow-alpha-l)) !important;
}

/* --- Brand Shadow --- */
.elementor .elementor-widget-button:is(.shadow-1,.sh-1,.shadow-1-m,.sh-1-m) .elementor-button{
box-shadow: var(--shadow-m) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button:is(.shadow-1-s,.sh-1-s) .elementor-button{
box-shadow: var(--shadow-s) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button:is(.shadow-1-l,.sh-1-l) .elementor-button{
box-shadow: var(--shadow-l) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}

.elementor .elementor-widget-button:is(.shadow-2,.sh-2,.shadow-2-m,.sh-2-m) .elementor-button{
box-shadow: var(--shadow-m) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button:is(.shadow-2-s,.sh-2-s) .elementor-button{
box-shadow: var(--shadow-s) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button:is(.shadow-2-l,.sh-2-l) .elementor-button{
box-shadow: var(--shadow-l) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}

/* --- Neutral Glow --- */
.elementor .elementor-widget-button:is(.glo,.glo-m) .elementor-button{
box-shadow: var(--glow-m) rgba(0,0,0,var(--shadow-alpha-m)) !important;
}
.elementor .elementor-widget-button.glo-s .elementor-button{
box-shadow: var(--glow-s) rgba(0,0,0,var(--shadow-alpha-s)) !important;
}
.elementor .elementor-widget-button.glo-l .elementor-button{
box-shadow: var(--glow-l) rgba(0,0,0,var(--shadow-alpha-l)) !important;
}

/* --- Brand Glow --- */
.elementor .elementor-widget-button:is(.glo-1,.glo-1-m) .elementor-button{
box-shadow: var(--glow-m) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent) !important;
}
.elementor .elementor-widget-button.glo-1-s .elementor-button{
box-shadow: var(--glow-s) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent) !important;
}
.elementor .elementor-widget-button.glo-1-l .elementor-button{
box-shadow: var(--glow-l) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent) !important;
}

.elementor .elementor-widget-button:is(.glo-2,.glo-2-m) .elementor-button{
box-shadow: var(--glow-m) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent) !important;
}
.elementor .elementor-widget-button.glo-2-s .elementor-button{
box-shadow: var(--glow-s) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent) !important;
}
.elementor .elementor-widget-button.glo-2-l .elementor-button{
box-shadow: var(--glow-l) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent) !important;
}

/* --- Neutral Shadow + Glow --- */
.elementor .elementor-widget-button:is(.shadow-glow,.shgl,.shadow-glow-m,.shgl-m) .elementor-button{
box-shadow:
var(--shadow-m) rgba(0,0,0,var(--shadow-alpha-m)),
var(--glow-m) rgba(0,0,0,var(--shadow-alpha-m))
!important;
}
.elementor .elementor-widget-button:is(.shadow-glow-s,.shgl-s) .elementor-button{
box-shadow:
var(--shadow-s) rgba(0,0,0,var(--shadow-alpha-s)),
var(--glow-s) rgba(0,0,0,var(--shadow-alpha-s))
!important;
}
.elementor .elementor-widget-button:is(.shadow-glow-l,.shgl-l) .elementor-button{
box-shadow:
var(--shadow-l) rgba(0,0,0,var(--shadow-alpha-l)),
var(--glow-l) rgba(0,0,0,var(--shadow-alpha-l))
!important;
}

/* --- Brand Shadow + Glow --- */
.elementor .elementor-widget-button:is(.shadow-glow-1,.shgl-1,.shgl-1-m) .elementor-button{
box-shadow:
var(--shadow-m) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-m) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.shgl-1-s .elementor-button{
box-shadow:
var(--shadow-s) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-s) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.shgl-1-l .elementor-button{
box-shadow:
var(--shadow-l) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-l) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}

.elementor .elementor-widget-button:is(.shadow-glow-2,.shgl-2,.shgl-2-m) .elementor-button{
box-shadow:
var(--shadow-m) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-m) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.shgl-2-s .elementor-button{
box-shadow:
var(--shadow-s) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-s) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.shgl-2-l .elementor-button{
box-shadow:
var(--shadow-l) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-l) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}

/* --- Hover Neutral Shadow --- */
.elementor .elementor-widget-button:is(.hover-shadow,.hsh,.hover-shadow-m,.hsh-m):hover .elementor-button{
box-shadow: var(--shadow-m) rgba(0,0,0,var(--shadow-alpha-m)) !important;
}
.elementor .elementor-widget-button:is(.hover-shadow-s,.hsh-s):hover .elementor-button{
box-shadow: var(--shadow-s) rgba(0,0,0,var(--shadow-alpha-s)) !important;
}
.elementor .elementor-widget-button:is(.hover-shadow-l,.hsh-l):hover .elementor-button{
box-shadow: var(--shadow-l) rgba(0,0,0,var(--shadow-alpha-l)) !important;
}

/* --- Hover Brand Shadow --- */
.elementor .elementor-widget-button:is(.hover-shadow-1,.hsh-1,.hsh-1-m):hover .elementor-button{
box-shadow: var(--shadow-m) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button.hsh-1-s:hover .elementor-button{
box-shadow: var(--shadow-s) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button.hsh-1-l:hover .elementor-button{
box-shadow: var(--shadow-l) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent) !important;
}

.elementor .elementor-widget-button:is(.hover-shadow-2,.hsh-2,.hsh-2-m):hover .elementor-button{
box-shadow: var(--shadow-m) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button.hsh-2-s:hover .elementor-button{
box-shadow: var(--shadow-s) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}
.elementor .elementor-widget-button.hsh-2-l:hover .elementor-button{
box-shadow: var(--shadow-l) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent) !important;
}

/* --- Hover Neutral Glow --- */
.elementor .elementor-widget-button:is(.hover-glow,.hgl,.hover-glow-m,.hgl-m):hover .elementor-button{
box-shadow: var(--glow-m) rgba(0,0,0,var(--shadow-alpha-m)) !important;
}
.elementor .elementor-widget-button:is(.hover-glow-s,.hgl-s):hover .elementor-button{
box-shadow: var(--glow-s) rgba(0,0,0,var(--shadow-alpha-s)) !important;
}
.elementor .elementor-widget-button:is(.hover-glow-l,.hgl-l):hover .elementor-button{
box-shadow: var(--glow-l) rgba(0,0,0,var(--shadow-alpha-l)) !important;
}

/* --- Hover Brand Glow --- */
.elementor .elementor-widget-button:is(.hover-glow-1,.hgl-1,.hgl-1-m):hover .elementor-button{
box-shadow: var(--glow-m) color-mix(in srgb, var(--shadow-color-1) var(--hgl-tint), transparent) !important;
}
.elementor .elementor-widget-button.hgl-1-s:hover .elementor-button{
box-shadow: var(--glow-s) color-mix(in srgb, var(--shadow-color-1) var(--hgl-tint), transparent) !important;
}
.elementor .elementor-widget-button.hgl-1-l:hover .elementor-button{
box-shadow: var(--glow-l) color-mix(in srgb, var(--shadow-color-1) var(--hgl-tint), transparent) !important;
}

.elementor .elementor-widget-button:is(.hover-glow-2,.hgl-2,.hgl-2-m):hover .elementor-button{
box-shadow: var(--glow-m) color-mix(in srgb, var(--shadow-color-2) var(--hgl-tint), transparent) !important;
}
.elementor .elementor-widget-button.hgl-2-s:hover .elementor-button{
box-shadow: var(--glow-s) color-mix(in srgb, var(--shadow-color-2) var(--hgl-tint), transparent) !important;
}
.elementor .elementor-widget-button.hgl-2-l:hover .elementor-button{
box-shadow: var(--glow-l) color-mix(in srgb, var(--shadow-color-2) var(--hgl-tint), transparent) !important;
}

/* --- Hover Neutral Shadow + Glow --- */
.elementor .elementor-widget-button:is(.hshgl,.hshgl-m):hover .elementor-button{
box-shadow:
var(--shadow-m) rgba(0,0,0,var(--shadow-alpha-m)),
var(--glow-m) rgba(0,0,0,var(--shadow-alpha-m))
!important;
}
.elementor .elementor-widget-button.hshgl-s:hover .elementor-button{
box-shadow:
var(--shadow-s) rgba(0,0,0,var(--shadow-alpha-s)),
var(--glow-s) rgba(0,0,0,var(--shadow-alpha-s))
!important;
}
.elementor .elementor-widget-button.hshgl-l:hover .elementor-button{
box-shadow:
var(--shadow-l) rgba(0,0,0,var(--shadow-alpha-l)),
var(--glow-l) rgba(0,0,0,var(--shadow-alpha-l))
!important;
}

/* --- Hover Brand Shadow + Glow --- */
.elementor .elementor-widget-button:is(.hshgl-1,.hshgl-1-m):hover .elementor-button{
box-shadow:
var(--shadow-m) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-m) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.hshgl-1-s:hover .elementor-button{
box-shadow:
var(--shadow-s) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-s) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.hshgl-1-l:hover .elementor-button{
box-shadow:
var(--shadow-l) color-mix(in srgb, var(--shadow-color-1) var(--sh-tint), transparent),
var(--glow-l) color-mix(in srgb, var(--shadow-color-1) var(--gl-tint), transparent)
!important;
}

.elementor .elementor-widget-button:is(.hshgl-2,.hshgl-2-m):hover .elementor-button{
box-shadow:
var(--shadow-m) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-m) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.hshgl-2-s:hover .elementor-button{
box-shadow:
var(--shadow-s) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-s) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}
.elementor .elementor-widget-button.hshgl-2-l:hover .elementor-button{
box-shadow:
var(--shadow-l) color-mix(in srgb, var(--shadow-color-2) var(--sh-tint), transparent),
var(--glow-l) color-mix(in srgb, var(--shadow-color-2) var(--gl-tint), transparent)
!important;
}

/* --- Hover Lift --- */
.elementor .elementor-widget-button:is(.hover-lift-s,.hl-s,.hover-lift-m,.hl-m) .elementor-button{
transition:
transform var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
box-shadow var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
background-color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
border-color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1))
!important;
will-change: transform;
}
.elementor .elementor-widget-button:is(.hover-lift-s,.hl-s):hover .elementor-button{
transform: var(--lift-s) !important;
}
.elementor .elementor-widget-button:is(.hover-lift-m,.hl-m):hover .elementor-button{
transform: var(--lift-m) !important;
}

/* =========================================================
2) BASE BUTTON (btn + variants) – FAILSAFE
========================================================= */
.elementor .elementor-widget-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost) .elementor-button,
.elementor .elementor-element:is(.btn, .btn-primary, .btn-outline, .btn-ghost) .elementor-button,
.elementor a.elementor-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost),
.elementor .elementor-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost){
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;

gap: var(--btn-ig, 0.7em) !important;

padding: var(--btn-py-m, 0.8em) var(--btn-px-m, 1.35em) !important;
border-radius: var(--btn-radius-current, var(--btn-radius, 0.75rem)) !important;

text-decoration: none !important;
line-height: 1.1 !important;

border-style: solid !important;
border-width: var(--btn-border-width, 1px) !important;
border-color: var(--btn-border, transparent) !important;

background: var(--btn-bg, transparent) !important;
color: var(--btn-color, inherit) !important;

transition:
transform var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
box-shadow var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
background-color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1)),
border-color var(--hover-speed, 180ms) var(--hover-ease, cubic-bezier(.2,.8,.2,1))
!important;
}

.elementor .elementor-widget-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost) .elementor-button:hover,
.elementor .elementor-element:is(.btn, .btn-primary, .btn-outline, .btn-ghost) .elementor-button:hover,
.elementor a.elementor-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost):hover,
.elementor .elementor-button:is(.btn, .btn-primary, .btn-outline, .btn-ghost):hover{
background: var(--btn-bg-hover, var(--btn-bg, transparent)) !important;
color: var(--btn-color-hover, var(--btn-color, inherit)) !important;
border-color: var(--btn-border-hover, var(--btn-border, transparent)) !important;
}

/* =========================================================
3) VARIANTS
Semantische Variant-Tokens
========================================================= */

/* Primary */
.elementor .elementor-widget-button.btn-primary .elementor-button,
.elementor .elementor-element.btn-primary .elementor-button,
.elementor a.elementor-button.btn-primary,
.elementor .elementor-button.btn-primary{
  --btn-bg: var(--btn-primary-bg, var(--c-accent, #000));
  --btn-color: var(--btn-primary-color, #fff);
  --btn-border: var(--btn-primary-border, var(--c-accent, #000));

  --btn-bg-hover: var(--btn-primary-bg-hover, var(--btn-primary-bg, var(--c-accent, #000)));
  --btn-color-hover: var(--btn-primary-color-hover, #fff);
  --btn-border-hover: var(--btn-primary-border-hover, var(--btn-primary-border, var(--c-accent, #000)));

  --btn-radius-current: var(--btn-primary-radius, var(--btn-radius, 0.75rem));
}

/* Outline */
.elementor .elementor-widget-button.btn-outline .elementor-button,
.elementor .elementor-element.btn-outline .elementor-button,
.elementor a.elementor-button.btn-outline,
.elementor .elementor-button.btn-outline{
  --btn-bg: var(--btn-outline-bg, transparent);
  --btn-color: var(--btn-outline-color, var(--c-text, #121417));
  --btn-border: var(--btn-outline-border, rgba(18,20,23,0.18));

  --btn-bg-hover: var(--btn-outline-bg-hover, transparent);
  --btn-color-hover: var(--btn-outline-color-hover, var(--c-accent, #000));
  --btn-border-hover: var(--btn-outline-border-hover, var(--c-accent, #000));

  --btn-radius-current: var(--btn-outline-radius, var(--btn-radius, 0.75rem));
}

/* Ghost */
.elementor .elementor-widget-button.btn-ghost .elementor-button,
.elementor .elementor-element.btn-ghost .elementor-button,
.elementor a.elementor-button.btn-ghost,
.elementor .elementor-button.btn-ghost{
  --btn-bg: var(--btn-ghost-bg, transparent);
  --btn-color: var(--btn-ghost-color, inherit);
  --btn-border: var(--btn-ghost-border, transparent);

  --btn-bg-hover: var(--btn-ghost-bg-hover, transparent);
  --btn-color-hover: var(--btn-ghost-color-hover, inherit);
  --btn-border-hover: var(--btn-ghost-border-hover, transparent);

  --btn-radius-current: var(--btn-ghost-radius, var(--btn-radius, 0.75rem));
}

/* =========================================================
4) SIZES + AUTO ICON GAP – FAILSAFE
========================================================= */

/* XXS */
.elementor .elementor-widget-button.btn-xxs .elementor-button,
.elementor .elementor-element.btn-xxs .elementor-button,
.elementor a.elementor-button.btn-xxs,
.elementor .elementor-button.btn-xxs{
padding: var(--btn-py-xxs, 0.35em) var(--btn-px-xxs, 0.7em) !important;
--btn-ig: var(--btn-ig-xxs, 0.35em);
}

/* XS */
.elementor .elementor-widget-button.btn-xs .elementor-button,
.elementor .elementor-element.btn-xs .elementor-button,
.elementor a.elementor-button.btn-xs,
.elementor .elementor-button.btn-xs{
padding: var(--btn-py-xs, 0.5em) var(--btn-px-xs, 0.9em) !important;
--btn-ig: var(--btn-ig-xs, 0.45em);
}

/* S */
.elementor .elementor-widget-button.btn-s .elementor-button,
.elementor .elementor-element.btn-s .elementor-button,
.elementor a.elementor-button.btn-s,
.elementor .elementor-button.btn-s{
padding: var(--btn-py-s, 0.65em) var(--btn-px-s, 1.1em) !important;
--btn-ig: var(--btn-ig-s, 0.55em);
}

/* M */
.elementor .elementor-widget-button.btn-m .elementor-button,
.elementor .elementor-element.btn-m .elementor-button,
.elementor a.elementor-button.btn-m,
.elementor .elementor-button.btn-m{
padding: var(--btn-py-m, 0.8em) var(--btn-px-m, 1.35em) !important;
--btn-ig: var(--btn-ig-m, 0.7em);
}

/* L */
.elementor .elementor-widget-button.btn-l .elementor-button,
.elementor .elementor-element.btn-l .elementor-button,
.elementor a.elementor-button.btn-l,
.elementor .elementor-button.btn-l{
padding: var(--btn-py-l, 1em) var(--btn-px-l, 1.7em) !important;
--btn-ig: var(--btn-ig-l, 0.85em);
}

/* =========================================================
5) ICON GAP OVERRIDE
Kommt bewusst NACH den Größen
========================================================= */
.elementor .elementor-widget-button.btn-ig-0 .elementor-button,
.elementor .elementor-element.btn-ig-0 .elementor-button,
.elementor a.elementor-button.btn-ig-0,
.elementor .elementor-button.btn-ig-0{
--btn-ig: 0;
}

.elementor .elementor-widget-button.btn-ig-xxs .elementor-button,
.elementor .elementor-element.btn-ig-xxs .elementor-button,
.elementor a.elementor-button.btn-ig-xxs,
.elementor .elementor-button.btn-ig-xxs{
--btn-ig: var(--btn-ig-xxs, 0.35em);
}

.elementor .elementor-widget-button.btn-ig-xs .elementor-button,
.elementor .elementor-element.btn-ig-xs .elementor-button,
.elementor a.elementor-button.btn-ig-xs,
.elementor .elementor-button.btn-ig-xs{
--btn-ig: var(--btn-ig-xs, 0.45em);
}

.elementor .elementor-widget-button.btn-ig-s .elementor-button,
.elementor .elementor-element.btn-ig-s .elementor-button,
.elementor a.elementor-button.btn-ig-s,
.elementor .elementor-button.btn-ig-s{
--btn-ig: var(--btn-ig-s, 0.55em);
}

.elementor .elementor-widget-button.btn-ig-m .elementor-button,
.elementor .elementor-element.btn-ig-m .elementor-button,
.elementor a.elementor-button.btn-ig-m,
.elementor .elementor-button.btn-ig-m{
--btn-ig: var(--btn-ig-m, 0.7em);
}

.elementor .elementor-widget-button.btn-ig-l .elementor-button,
.elementor .elementor-element.btn-ig-l .elementor-button,
.elementor a.elementor-button.btn-ig-l,
.elementor .elementor-button.btn-ig-l{
--btn-ig: var(--btn-ig-l, 0.85em);
}

/* =========================================================
6) BLOCK / PILL
========================================================= */
.elementor .elementor-widget-button.btn-block .elementor-button,
.elementor .elementor-element.btn-block .elementor-button,
.elementor a.elementor-button.btn-block,
.elementor .elementor-button.btn-block{
width: 100% !important;
}

.elementor .elementor-widget-button.btn-pill .elementor-button,
.elementor .elementor-element.btn-pill .elementor-button,
.elementor a.elementor-button.btn-pill,
.elementor .elementor-button.btn-pill{
border-radius: 9999px !important;
}

/* =========================================================
7) RADIUS UTILITIES
========================================================= */
.elementor .elementor-widget-button.ro-xxs .elementor-button,
.elementor .elementor-element.ro-xxs .elementor-button,
.elementor a.elementor-button.ro-xxs,
.elementor .elementor-button.ro-xxs,
.elementor .elementor-widget-button.round-xxs .elementor-button,
.elementor .elementor-element.round-xxs .elementor-button,
.elementor a.elementor-button.round-xxs,
.elementor .elementor-button.round-xxs{
border-radius: var(--radius-xxs, 0.25rem) !important;
}

.elementor .elementor-widget-button.ro-xs .elementor-button,
.elementor .elementor-element.ro-xs .elementor-button,
.elementor a.elementor-button.ro-xs,
.elementor .elementor-button.ro-xs,
.elementor .elementor-widget-button.round-xs .elementor-button,
.elementor .elementor-element.round-xs .elementor-button,
.elementor a.elementor-button.round-xs,
.elementor .elementor-button.round-xs{
border-radius: var(--radius-xs, 0.5rem) !important;
}

.elementor .elementor-widget-button.ro-s .elementor-button,
.elementor .elementor-element.ro-s .elementor-button,
.elementor a.elementor-button.ro-s,
.elementor .elementor-button.ro-s,
.elementor .elementor-widget-button.round-s .elementor-button,
.elementor .elementor-element.round-s .elementor-button,
.elementor a.elementor-button.round-s,
.elementor .elementor-button.round-s{
border-radius: var(--radius-s, 0.75rem) !important;
}

.elementor .elementor-widget-button.ro-m .elementor-button,
.elementor .elementor-element.ro-m .elementor-button,
.elementor a.elementor-button.ro-m,
.elementor .elementor-button.ro-m,
.elementor .elementor-widget-button.round-m .elementor-button,
.elementor .elementor-element.round-m .elementor-button,
.elementor a.elementor-button.round-m,
.elementor .elementor-button.round-m{
border-radius: var(--radius-m, 1rem) !important;
}

.elementor .elementor-widget-button.ro-l .elementor-button,
.elementor .elementor-element.ro-l .elementor-button,
.elementor a.elementor-button.ro-l,
.elementor .elementor-button.ro-l,
.elementor .elementor-widget-button.round-l .elementor-button,
.elementor .elementor-element.round-l .elementor-button,
.elementor a.elementor-button.round-l,
.elementor .elementor-button.round-l{
border-radius: var(--radius-l, 1.25rem) !important;
}

.elementor .elementor-widget-button.ro-xl .elementor-button,
.elementor .elementor-element.ro-xl .elementor-button,
.elementor a.elementor-button.ro-xl,
.elementor .elementor-button.ro-xl,
.elementor .elementor-widget-button.round-xl .elementor-button,
.elementor .elementor-element.round-xl .elementor-button,
.elementor a.elementor-button.round-xl,
.elementor .elementor-button.round-xl{
border-radius: var(--radius-xl, 1.5rem) !important;
}

.elementor .elementor-widget-button.ro-xxl .elementor-button,
.elementor .elementor-element.ro-xxl .elementor-button,
.elementor a.elementor-button.ro-xxl,
.elementor .elementor-button.ro-xxl,
.elementor .elementor-widget-button.round-xxl .elementor-button,
.elementor .elementor-element.round-xxl .elementor-button,
.elementor a.elementor-button.round-xxl,
.elementor .elementor-button.round-xxl{
border-radius: var(--radius-xxl, 2rem) !important;
}

/* =========================================================
8) LEGACY ALIAS
========================================================= */
.elementor .elementor-widget-button.btn-icon .elementor-button,
.elementor .elementor-element.btn-icon .elementor-button,
.elementor a.elementor-button.btn-icon,
.elementor .elementor-button.btn-icon{
--btn-ig: var(--btn-ig-s, 0.55em);
}
