.wdt-button-holder { 
    display: inline-flex; position: relative; -webkit-transition: var(--wdt-Safe-Transition); transition: var(--wdt-Safe-Transition); }

.wdt-button { 
    border: 0px solid transparent; display: inline-flex; align-items: stretch; font-size: 1em; font-weight:var(--wdtFontWeight_Ext);
    letter-spacing: 1.4px; line-height: normal; margin: 0; overflow: visible; position: relative; 
    z-index: 0; text-decoration: none; text-transform: uppercase; 
    -webkit-transition: var(--wdt-Safe-Transition); -moz-transition: var(--wdt-Safe-Transition); 
    transition: var(--wdt-Safe-Transition); }

.wdt-button, .wdt-button-holder .wdt-button { 
    background-color: transparent; color: var(--wdtAccentTxtColor); justify-content: center; text-align: center;
    background-image: var(--wdt-linear-gradient-bg); background-repeat:no-repeat; background-size:100% 220%; background-position:bottom;
    -webkit-transition: var(--wdt-Safe-Transition); -moz-transition: var(--wdt-Safe-Transition); transition: var(--wdt-Safe-Transition); }

.wdt-button:focus, .wdt-button-holder .wdt-button:focus,
.wdt-button:hover, .wdt-button-holder .wdt-button:hover { 
    background-color: transparent; color: var(--wdtAccentTxtColor); -webkit-box-shadow: none; box-shadow: none; 
    background-size:100% 220%; background-position:top; }

.wdt-dark-bg .wdt-button:focus, .wdt-dark-bg .wdt-button-holder .wdt-button:focus,
.wdt-dark-bg .wdt-button:hover, .wdt-dark-bg .wdt-button-holder .wdt-button:hover { 
    background-color: transparent; color: var(--wdtSecondaryColor); }

.wdt-button .wdt-button-text, 
.wdt-button .wdt-button-icon { vertical-align: top; }

.wdt-button .wdt-button-text { display: inline-grid; align-content: center; text-align: left; gap: 10px; height: 100%; position: relative; }

.wdt-button .wdt-button-icon {     
    font-size: calc(100% + 30%); line-height: 0; display: inline-flex; align-items: center; transition: var(--wdt-Safe-Transition); }

.wdt-button .wdt-button-icon span { display: inherit; align-items: center; position: relative; }

.wdt-button .wdt-button-text .wdt-button-subtext { display: block; font-size: 0.75em; margin-top: -2px; }

.wdt-button-holder.wdt-button-size-sm .wdt-button { 
    font-family: var(--wdt-elementor-typo-text-font-family); font-size: calc(var(--wdtFontSize_Ext) - 2px); 
    font-weight: var(--wdtFontWeight_Ext); padding: var(--wdtPadding_MiniBtn); line-height: normal; }

.wdt-button-holder.wdt-button-size-nm .wdt-button {     
    font-family: var(--wdt-elementor-typo-text-font-family); font-size: var(--wdtFontSize_Ext); 
    font-weight: var(--wdtFontWeight_Ext); padding: var(--wdtPadding_Btn); line-height: normal; }

.wdt-button-holder.wdt-button-size-lg .wdt-button { 
    font-family: var(--wdt-elementor-typo-text-font-family); font-size: calc(var(--wdtFontSize_Ext) + 2px); 
    font-weight: var(--wdtFontWeight_Ext); padding: var(--wdtPadding_MaxiBtn); line-height: normal; }

.elementor-align-justify .wdt-button-holder, .elementor-align-justify .wdt-button-holder .wdt-button { width: 100%; }

.wdt-button-holder.wdt-button-icon-before .wdt-button .wdt-button-icon { margin-right: 12px; }
.wdt-button-holder.wdt-button-icon-after .wdt-button .wdt-button-icon { margin-left: 12px; }


/* Styles */

.wdt-button-holder.wdt-button-style-underline .wdt-button .wdt-button-text:before, 
.wdt-button-holder.wdt-button-style-overline:before,
.wdt-button-holder.wdt-button-style-line-through .wdt-button .wdt-button-text > span:before { 
    content: ""; display: inline !important; height: 1px; pointer-events: none; position: absolute; bottom: 0; left: 0; right: 0;
    width: auto; -webkit-transition: var(--wdt-Safe-Transition); transition: var(--wdt-Safe-Transition); }
.wdt-button-holder.wdt-button-style-underline .wdt-button .wdt-button-text:before, 
.wdt-button-holder.wdt-button-style-overline:before{
    width:0; }

.wdt-button-holder.wdt-button-style-underline .wdt-button { margin-bottom: 3px; }
.wdt-button-holder.wdt-button-style-underline:before { bottom: 0; top: auto; }

.wdt-button-holder.wdt-button-style-overline .wdt-button { margin-top: 3px; }
.wdt-button-holder.wdt-button-style-overline:before { bottom: auto; top: 0; }

.wdt-button-holder.wdt-button-style-underline .wdt-button .wdt-button-text:before, 
.wdt-button-holder.wdt-button-style-overline:before { color: var(--wdt-elementor-color-accent); background-color: currentColor; background-image: inherit; }

.wdt-button-holder.wdt-button-style-underline .wdt-button:focus .wdt-button-text:before,
.wdt-button-holder.wdt-button-style-underline .wdt-button:hover .wdt-button-text:before, 
.wdt-button-holder.wdt-button-style-overline:focus:before,
.wdt-button-holder.wdt-button-style-overline:hover:before { width: 100%; color: var(--wdt-elementor-color-primary); background-color: currentColor; background-image: inherit; }

.wdt-button-holder.wdt-button-style-line-through .wdt-button .wdt-button-text > span { position: relative; }
.wdt-button-holder.wdt-button-style-line-through .wdt-button .wdt-button-text > span:before { background-color: currentColor; margin: auto; -webkit-transform: translateY(100%); transform: translateY(100%); }


/* Template - Bordered */
.wdt-button-holder.wdt-template-bordered .wdt-button { background: none !important; border-color: currentColor; border-width: 1px; }

.wdt-button-holder.wdt-template-bordered .wdt-button:not(:focus), 
.wdt-button-holder.wdt-template-bordered .wdt-button:not(:hover) { color: var(--wdt-elementor-color-primary); }

.wdt-button-holder.wdt-template-bordered .wdt-button:focus, 
.wdt-button-holder.wdt-template-bordered .wdt-button:hover {     
    color: var(--wdt-elementor-color-accent) ; }

.wdt-dark-bg .wdt-button-holder.wdt-template-bordered .wdt-button:not(:focus), 
.wdt-dark-bg .wdt-button-holder.wdt-template-bordered .wdt-button:not(:hover) { color: var(--wdtAccentTxtColor); }

.wdt-dark-bg .wdt-button-holder.wdt-template-bordered .wdt-button:focus, 
.wdt-dark-bg .wdt-button-holder.wdt-template-bordered .wdt-button:hover {     
    color: rgba(var(--wdtAccentTxtColorRgb),0.7); }

/* Template - Textual */
.wdt-button-holder.wdt-template-textual .wdt-button { border-width: 0; padding: 0; border-radius: var(--wdtRadius_Zero); }

.wdt-button-holder.wdt-template-textual .wdt-button:not(:focus), 
.wdt-button-holder.wdt-template-textual .wdt-button:not(:hover) { background: none !important; border-width: 0; color: var(--wdt-elementor-color-accent); }

.wdt-button-holder.wdt-template-textual .wdt-button:focus, 
.wdt-button-holder.wdt-template-textual .wdt-button:hover { background: none; border-width: 0; color: var(--wdt-elementor-color-primary);
    -webkit-box-shadow: none; box-shadow: none; }

.wdt-dark-bg .wdt-button-holder.wdt-template-textual .wdt-button:not(:focus), 
.wdt-dark-bg .wdt-button-holder.wdt-template-textual .wdt-button:not(:hover) {color: var(--wdtAccentTxtColor); }

.wdt-dark-bg .wdt-button-holder.wdt-template-textual .wdt-button:focus, 
.wdt-dark-bg .wdt-button-holder.wdt-template-textual .wdt-button:hover { color: rgba(var(--wdtAccentTxtColorRgb),0.7); }

/* Template - Rounded */
.wdt-button-holder.wdt-template-rounded .wdt-button { 
    position: relative; width: 150px; height: 150px; padding: 30px; background-color: rgba(var(--wdtHeadAltColorRgb), .2);
 -webkit-border-radius: var(--wdtRadius_Full); border-radius: var(--wdtRadius_Full); }
.wdt-button-holder.wdt-template-rounded .wdt-button:hover { background-color: transparent; }
.wdt-button-holder.wdt-template-rounded .wdt-button .wdt-button-text { text-align: center; }
.wdt-button-holder.wdt-template-rounded .wdt-button:before {
    content: ""; height: auto; margin: auto; position: absolute; bottom: 0px; left: 0px; right: 0px; top: 0px;
    width: auto; z-index: -1;background-color: rgba(var(--wdtAccentTxtColorRgb), .15);
    border-radius: var(--wdtRadius_Full); -webkit-transition: var(--wdt-Safe-Transition); transition: var(--wdt-Safe-Transition);
    }
