/* CSP Button2 base */
.elementor-button.csp-button2 {
  border-radius: 50px;
  width: 100%;
}

/* Smooth icon hover transitions */
.elementor-button.csp-button2 .elementor-button-icon i,
.elementor-button.csp-button2 .elementor-button-icon svg {
  transition: color 200ms ease, fill 200ms ease, stroke 200ms ease;
}

/* Icon spacing: 12px from the nearest button border */
/* Absolute edge spacing for non-icon buttons */
/* .elementor-button.csp-button2:not(.csp-type-icon) .elementor-align-icon-left { left: 16px; position: absolute; } */
/* .elementor-button.csp-button2:not(.csp-type-icon) .elementor-align-icon-right { right: 16px; position: absolute; } */

/* Edge alignment: push icon to extreme left/right when enabled */
.elementor-button.csp-button2.csp-icon-edge .elementor-button-content-wrapper {
  width: 100%;
}
.elementor-button.csp-button2.csp-icon-edge .elementor-align-icon-left {
  margin-right: auto !important;
}
.elementor-button.csp-button2.csp-icon-edge .elementor-align-icon-right {
  margin-left: auto !important;
}

.csp-button2.elementor-size-sm {
  padding: 7px 12px 4px 12px;
  font-size: 12px;
  font-weight: 500;
}

.elementor-button.csp-button2.elementor-size-md {
  padding: 8px 12px;
  font-size: 14px;
  font-weight: 500;
}

.elementor-button.csp-button2.elementor-size-lg {
  padding: 12px 16px;
  font-size: 16px;
  font-weight: 500;
}

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

.elementor-button.csp-button2.elementor-size-sm .elementor-button-content-wrapper {
  min-height: 16px;
}

.elementor-button.csp-button2.elementor-size-md .elementor-button-content-wrapper {
  min-height: 15px;
}

.elementor-button.csp-button2.elementor-size-lg .elementor-button-content-wrapper {
  min-height: 22px;
}

/* Brand: Primary */
.elementor-button.csp-button2.csp-type-brand.csp-variant-primary, .elementor-button.csp-button2.csp-type-icon.csp-variant-primary {
  background-color: #E51518;
  color: #EEEDE7;
}
.elementor-button.csp-button2.csp-type-brand.csp-variant-primary .elementor-button-icon i { color: #EEEDE7; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-primary .elementor-button-icon svg { fill: #EEEDE7; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-primary:hover,
.elementor-button.csp-button2.csp-type-brand.csp-variant-primary:focus,
.elementor-button.csp-button2.csp-type-icon.csp-variant-primary:hover {
  background-color: #BE0003;
}

/* Brand: Secondary */
.elementor-button.csp-button2.csp-type-brand.csp-variant-secondary {
  background-color: #fff;
  color: #4C4C4C;
  border: 1px solid #D0CFC4;
}
.elementor-button.csp-button2.csp-type-brand.csp-variant-secondary .elementor-button-icon i { color: #E51518; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-secondary .elementor-button-icon svg { fill: #E51518; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-secondary:hover,
.elementor-button.csp-button2.csp-type-brand.csp-variant-secondary:focus {
  background-color: #E0DED4;
}

/* Brand: Tertiary */
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary {
  background-color: transparent;
  color: #4C4C4C;
  border: 1px solid #E51518;
}
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary .elementor-button-icon i { color: #E51518; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary:hover .elementor-button-icon i { color: #EEEDE7; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary .elementor-button-icon svg { fill: #E51518; }
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary:hover,
.elementor-button.csp-button2.csp-type-brand.csp-variant-tertiary:focus {
  background-color: #E51518;
  color: #EEEDE7;
}

/* Commerce: Primary */
.elementor-button.csp-button2.csp-type-commerce.csp-variant-primary {
  background-color: #14B13F;
  color: #fff;
}
.elementor-button.csp-button2.csp-type-commerce.csp-variant-primary .elementor-button-icon i { color: #fff; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-primary .elementor-button-icon svg { fill: #fff; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-primary:hover,
.elementor-button.csp-button2.csp-type-commerce.csp-variant-primary:focus {
  background-color: #0C6A26;
}

/* Commerce: Secondary */
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary {
  background-color: #D3ECDA;
  color: #0C6A26;
  border: 1px solid #0C6A26;
}
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary .elementor-button-icon i { color: #0C6A26; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary .elementor-button-icon svg { fill: #0C6A26; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary:hover .elementor-button-icon svg { fill: #fff; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary:hover .elementor-button-icon i { color: #fff; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary:hover,
.elementor-button.csp-button2.csp-type-commerce.csp-variant-secondary:focus {
  background-color: #0C6A26;
  color: #fff;
}

/* Commerce: Tertiary */
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary {
  background-color: #fff;
  color: #4C4C4C;
  border: 1px solid #0C6A26;
}
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary .elementor-button-icon i { color: #0C6A26; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary .elementor-button-icon svg { fill: #0C6A26; }
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:hover,
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:focus {
  background-color: #0C6A26;
  color: #fff;
}
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:hover .elementor-button-icon i,
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:focus .elementor-button-icon i {
  color: #fff;
}
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:hover .elementor-button-icon svg,
.elementor-button.csp-button2.csp-type-commerce.csp-variant-tertiary:focus .elementor-button-icon svg {
  fill: #fff;
}


.elementor-button.csp-button2.csp-type-icon {
    padding: unset;
    display: flex;
    align-items: center;
    justify-content: center;
}

.elementor-button.csp-button2.csp-type-icon.csp-variant-commerce {
    background-color: #14B13F;
}

.elementor-button.csp-button2.csp-type-icon.csp-variant-commerce:hover,
.elementor-button.csp-button2.csp-type-icon.csp-variant-commerce:focus {
    background-color: #0C6A26;
}

.elementor-button.csp-button2.csp-type-icon.csp-variant-secondary {
    background-color: #fff;
    border: 1px solid #D0CFC4;
}
.elementor-button.csp-button2.csp-type-icon.csp-variant-secondary .elementor-button-icon i { color: #4C4C4C; }
.elementor-button.csp-button2.csp-type-icon.csp-variant-secondary .elementor-button-icon svg { fill: #4C4C4C; }

.elementor-button.csp-button2.csp-type-icon.csp-variant-secondary:hover,
.elementor-button.csp-button2.csp-type-icon.csp-variant-secondary:focus {
    background-color: #D0CFC4;
}

.elementor-button.csp-button2.csp-type-icon.csp-variant-tertiary {
    background-color: #222;
}
.elementor-button.csp-button2.csp-type-icon.csp-variant-tertiary .elementor-button-icon i { color: #EEEDE7; }
.elementor-button.csp-button2.csp-type-icon.csp-variant-tertiary .elementor-button-icon svg { fill: #EEEDE7; }


.elementor-button.csp-button2.csp-type-icon.csp-variant-tertiary:hover,
.elementor-button.csp-button2.csp-type-icon.csp-variant-tertiary:focus {
    background-color: #E51518;
}

.elementor-button.csp-button2.csp-type-icon.elementor-size-lg {
    width: 80px;
    height: 80px;
}

.elementor-button.csp-button2.csp-type-icon.elementor-size-md {
    width: 56px;
    height: 56px;
}

.elementor-button.csp-button2.csp-type-icon.elementor-size-sm {
    width: 32px;
    height: 32px;
}