.elementor-button svg {
  height: auto;
}

.elementor-button  svg {
  transition: all 0.3s ease;
}

.elementor-button-content-wrapper {
  align-items: center;
}

.elementor-button-wrapper{
  line-height: 0;
}

.elementor-widget .elementor-button {
    box-shadow: var(--the7-btn-shadow);
  &:hover {
    box-shadow: var(--the7-btn-shadow-hover);
  }
}

.elementor-widget-form,
.elementor-widget-button {
  & .elementor-button {
    .css-var-background("--the7-btn-bg", @dt-btn-bg-color,  @dt-btn-bg-color-2);

    &:hover {
      .css-var-background("--the7-btn-hover-bg", @dt-btn-hover-bg-color, @dt-btn-hover-bg-color-2);
    }
  }
}

.elementor-element .elementor-button,
body .elementor-form .elementor-button,
#reviews .comment-form #submit{
  &.elementor-size-xs {
    font: var(--the7-btn-s-font);
    text-transform: var(--the7-btn-s-text-transform);
    letter-spacing: var(--the7-btn-s-letter-spacing);
    word-spacing: var(--the7-btn-s-word-spacing);
    -webkit-border-radius: var(--the7-btn-s-border-radius);
    border-radius: var(--the7-btn-s-border-radius);
    border-width: var(--the7-btn-s-border-width);
    border-style: var(--the7-btn-s-border-style);
    border-color: var(--the7-btn-border-color);
    padding: var(--the7-btn-s-padding);
    min-width: var(--the7-btn-s-min-width);
    min-height: var(--the7-btn-s-min-height);
    --btn-icon-spacing: var(--the7-btn-s-icon-gap, 7px);
    & svg {
      width: var(--the7-btn-s-icon-size);
    }
    & .elementor-button-icon {
      font-size: var(--the7-btn-s-icon-size);
    }
    & .elementor-align-icon-left  {
      margin-right: var(--btn-icon-spacing);
    }
    & .elementor-align-icon-right {
      margin-left: var(--btn-icon-spacing);
    }
  }

  &.elementor-size-sm {
    font: var(--the7-btn-m-font);
    text-transform: var(--the7-btn-m-text-transform);
    letter-spacing: var(--the7-btn-m-letter-spacing);
    word-spacing: var(--the7-btn-m-word-spacing);
    -webkit-border-radius: var(--the7-btn-m-border-radius);
    border-radius: var(--the7-btn-m-border-radius);
    border-width: var(--the7-btn-m-border-width);
    border-style: var(--the7-btn-m-border-style);
    border-color: var(--the7-btn-border-color);
    padding: var(--the7-btn-m-padding);
    min-width: var(--the7-btn-m-min-width);
    min-height: var(--the7-btn-m-min-height);
    --btn-icon-spacing: var(--the7-btn-m-icon-gap, 7px);
    & svg {
      width: var(--the7-btn-m-icon-size);
    }
    & .elementor-button-icon {
      font-size: var(--the7-btn-m-icon-size);
    }
    & .elementor-align-icon-left  {
      margin-right: var(--btn-icon-spacing);
    }
    & .elementor-align-icon-right {
      margin-left: var(--btn-icon-spacing);
    }
  }

  &.elementor-size-md {
    font: var(--the7-btn-l-font);
    text-transform: var(--the7-btn-l-text-transform);
    letter-spacing: var(--the7-btn-l-letter-spacing);
    word-spacing: var(--the7-btn-l-word-spacing);
    -webkit-border-radius: var(--the7-btn-l-border-radius);
    border-radius: var(--the7-btn-l-border-radius);
    border-width: var(--the7-btn-l-border-width);
    border-style: var(--the7-btn-l-border-style);
    border-color: var(--the7-btn-border-color);
    padding: var(--the7-btn-l-padding);
    min-width: var(--the7-btn-l-min-width);
    min-height: var(--the7-btn-l-min-height);
    --btn-icon-spacing: var(--the7-btn-l-icon-gap, 7px);
    & svg {
      width: var(--the7-btn-l-icon-size);
    }
    & .elementor-button-icon {
      font-size: var(--the7-btn-l-icon-size);
    }
    & .elementor-align-icon-left  {
      margin-right: var(--btn-icon-spacing);
    }
    & .elementor-align-icon-right {
      margin-left: var(--btn-icon-spacing);
    }
  }

  &.elementor-size-lg {
    font: var(--the7-btn-lg-font);
    text-transform: var(--the7-btn-lg-text-transform);
    letter-spacing: var(--the7-btn-lg-letter-spacing);
    word-spacing: var(--the7-btn-lg-word-spacing);
    -webkit-border-radius: var(--the7-btn-lg-border-radius);
    border-radius: var(--the7-btn-lg-border-radius);
    border-width: var(--the7-btn-lg-border-width);
    border-style: var(--the7-btn-lg-border-style);
    border-color: var(--the7-btn-border-color);
    padding: var(--the7-btn-lg-padding);
    min-width: var(--the7-btn-lg-min-width);
    min-height: var(--the7-btn-lg-min-height);
    --btn-icon-spacing: var(--the7-btn-lg-icon-gap, 7px);
    & svg {
      width: var(--the7-btn-lg-icon-size);
    }
    & .elementor-button-icon {
      font-size: var(--the7-btn-lg-icon-size);
    }
    & .elementor-align-icon-left  {
      margin-right: var(--btn-icon-spacing);
    }
    & .elementor-align-icon-right {
      margin-left: var(--btn-icon-spacing);
    }
  }

  &.elementor-size-xl {
    font: var(--the7-btn-xl-font);
    text-transform: var(--the7-btn-xl-text-transform);
    letter-spacing: var(--the7-btn-xl-letter-spacing);
    word-spacing: var(--the7-btn-xl-word-spacing);
    -webkit-border-radius: var(--the7-btn-xl-border-radius);
    border-radius: var(--the7-btn-xl-border-radius);
    border-width: var(--the7-btn-xl-border-width);
    border-style: var(--the7-btn-xl-border-style);
    border-color: var(--the7-btn-border-color);
    padding: var(--the7-btn-xl-padding);
    min-width: var(--the7-btn-xl-min-width);
    min-height: var(--the7-btn-xl-min-height);
    --btn-icon-spacing: var(--the7-btn-xl-icon-gap, 7px);
    & svg {
      width: var(--the7-btn-xl-icon-size);
    }
    & .elementor-button-icon {
      font-size: var(--the7-btn-xl-icon-size);
    }
    & .elementor-align-icon-left  {
      margin-right: var(--btn-icon-spacing);
    }
    & .elementor-align-icon-right {
      margin-left: var(--btn-icon-spacing);
    }
  }
}

#elementor-menu-cart__toggle_button {
  --the7-btn-m-min-width: initial;
  --the7-btn-m-min-height: initial;
}

.elementor-element .elementor-button.elementor-menu-cart__toggle_button .elementor-button-icon{
  font-size: var(--toggle-icon-size, inherit);
}

.elementor-element .elementor-button.elementor-menu-cart__toggle_button{
  background: var(--toggle-button-background-color, transparent);
  color: var(--toggle-button-text-color, #818a91);
  border-style: var(--toggle-button-border-type, solid);
  border-width: var(--toggle-button-border-width, 0px);
  border-color: var(--toggle-button-border-color, #818a91);
  border-radius: var(--toggle-button-border-radius, 0px);
  padding: var(--toggle-icon-padding, 12px 24px);
}

.elementor-element .elementor-button.elementor-menu-cart__toggle_button:hover {
  color: var(--toggle-button-hover-text-color,#818a91);
  background: var(--toggle-button-hover-background-color,transparent);
  border-color: var(--toggle-button-hover-border-color,#818a91);
}

.elementor-element .elementor-menu-cart__footer-buttons .elementor-button {
  min-height: -webkit-fit-content;
  min-height: -moz-fit-content;
  min-height: fit-content;
  border-radius: var(--cart-footer-buttons-border-radius, 0px);
}

.elementor-element .elementor-menu-cart__footer-buttons .elementor-button--view-cart {
  color: var(--view-cart-button-text-color, var(--the7-btn-color));
  padding: var(--view-cart-button-padding, var(--the7-btn-l-padding));
  background: var(--view-cart-button-background-color, var(--the7-btn-bg));
}
.elementor-element .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
  color: var(--view-cart-button-hover-text-color, var(--the7-btn-hover-color));
  background: var(--view-cart-button-hover-background-color, var(--the7-btn-hover-bg));
}

.elementor-element  .elementor-menu-cart__footer-buttons .elementor-button--checkout {
  display: var(--checkout-button-display,inline-block);
  color: var(--checkout-button-text-color, var(--the7-btn-color));
  padding: var(--checkout-button-padding, var(--the7-btn-l-padding));
  background: var(--checkout-button-background-color, var(--the7-btn-bg));
}

.elementor-element .elementor-menu-cart__footer-buttons .elementor-button--checkout:hover {
  color: var(--checkout-button-hover-text-color, var(--the7-btn-hover-color));
  background: var(--checkout-button-hover-background-color, var(--the7-btn-hover-bg));
}