/* Shared CTA treatment: native theme font, Zehl-sized labels and 5px corners. */
body :is(
 .elementor-widget.elementor-widget-button:where(:not(.read-more):not(.toc__is-expanded):not(.toc__is-collapsed):not(.jgw-area-tag)) .elementor-button,
 .wp-block-button__link,
 .wp-element-button,
 a.jgw-cta,
 .site-content a.button,
 .gform_wrapper .gform_button,
 .gform_wrapper .gform_next_button,
 .gform_wrapper .gform_previous_button,
 .site-content input[type="submit"]
){
 font-family:var(--e-global-typography-text-font-family,Roboto),sans-serif!important;
 font-size:16px!important;
 font-weight:700!important;
 line-height:1.25!important;
 letter-spacing:0!important;
 border-radius:5px!important;
 box-shadow:none!important;
 text-decoration:none!important;
 max-width:100%;
 transition:none!important;
}
body :is(.elementor-widget-button.jgw-cta,.wp-block-button) :is(.elementor-button-text,.elementor-button-content-wrapper){
 font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;text-transform:inherit!important;border-radius:0!important;
}
body .elementor-widget-button.jgw-cta .elementor-button-text{white-space:normal!important}
body :is(.elementor-widget-button.jgw-cta .elementor-button,.wp-block-button__link,.wp-element-button,a.jgw-cta,.site-content a.button,.gform_wrapper .gform_button,.gform_wrapper .gform_next_button,.gform_wrapper .gform_previous_button,.site-content input[type="submit"]):hover{
 box-shadow:none!important;transform:none!important;text-decoration:none!important;
}
body .elementor-widget.elementor-widget-button:is(.jgw-cta--text,.jgw-phone-link) .elementor-button{box-shadow:none!important}
/* The video opener keeps its play icon and transparent presentation. */
body .elementor-widget-uael-modal-popup .elementor-button{font-family:var(--e-global-typography-text-font-family,Roboto),sans-serif!important;font-size:16px!important;font-weight:700!important;border-radius:5px!important;box-shadow:none!important}
body .elementor-widget-uael-modal-popup .elementor-button-text{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important}
body :is(.elementor-widget-button.jgw-cta .elementor-button,.wp-block-button__link,.wp-element-button,a.jgw-cta,.gform_wrapper .gform_button,.gform_wrapper .gform_next_button):focus-visible{outline:3px solid currentColor;outline-offset:4px}

/* Set Gravity Forms' native variables as well as the visible button properties.
   This covers both current button markup and legacy input submit controls. */
body .gform_wrapper{
 --gf-ctrl-btn-radius:5px!important;
 --gf-ctrl-btn-font-family:var(--e-global-typography-text-font-family,Roboto),sans-serif!important;
 --gf-ctrl-btn-font-size:20px!important;
 --gf-ctrl-btn-font-weight:700!important;
}
body .gform_wrapper.gform_wrapper.gform_wrapper :is(.gform_button,.gform_next_button,.gform_previous_button,[id^="gform_submit_button_"],[id^="gform_next_button_"],[id^="gform_previous_button_"]){
 --gf-local-radius:5px!important;
 --gf-local-font-size:20px!important;
 --gf-local-font-weight:700!important;
 font-family:var(--e-global-typography-text-font-family,Roboto),sans-serif!important;
 font-size:20px!important;
 font-weight:700!important;
 line-height:1.25!important;
 border-radius:5px!important;
 box-shadow:none!important;
 transition:none!important;
}

/* Desktop CTA labels follow the 20px uppercase hero treatment. */
@media(min-width:768px){
body :is(
 .elementor-widget.elementor-widget-button:where(:not(.read-more):not(.toc__is-expanded):not(.toc__is-collapsed):not(.jgw-area-tag)) .elementor-button,
 .wp-block-button__link,
 .wp-element-button,
 a.jgw-cta,
 .site-content a.button,
 .gform_wrapper .gform_button,
 .gform_wrapper .gform_next_button,
 .gform_wrapper .gform_previous_button,
 .site-content input[type="submit"]
){font-size:20px!important;text-transform:uppercase!important}
}

/* Desktop labels stay on one line; intrinsic widths replace fixed widget widths. */
@media(min-width:768px){
body :is(
 .elementor-widget.elementor-widget-button:where(:not(.read-more):not(.toc__is-expanded):not(.toc__is-collapsed):not(.jgw-area-tag)) .elementor-button,
 .wp-block-button__link,
 .wp-element-button,
 a.jgw-cta,
 .site-content a.button,
 .gform_wrapper .gform_button,
 .gform_wrapper .gform_next_button,
 .gform_wrapper .gform_previous_button,
 .site-content input[type="submit"]
){white-space:nowrap!important;min-width:max-content!important;max-width:none!important}
body .elementor-widget-button.jgw-cta:not(.jgw-phone-link):not(.jgw-cta--text){width:max-content!important;min-width:max-content!important;max-width:100%!important;flex-shrink:0!important}
body .elementor-widget-button.jgw-cta:not(.jgw-phone-link):not(.jgw-cta--text) .elementor-button{width:auto!important}
/* Preserve Elementor alignment when a solid CTA widget uses intrinsic width. */
body .elementor-widget-button.jgw-cta.elementor-align-center{margin-inline:auto!important}
body .elementor-widget-button.jgw-cta.elementor-align-right{margin-left:auto!important;margin-right:0!important}
body .elementor-widget-button.jgw-cta :is(.elementor-button-text,.elementor-button-content-wrapper){white-space:nowrap!important;flex-wrap:nowrap!important}
body .elementor-widget-button.jgw-cta:not(.jgw-phone-link):not(.jgw-cta--text) .elementor-button{padding-inline:24px!important}
/* Let the form card grow with its submit label rather than overflowing the card. */
body .gform_wrapper,body .gform_wrapper form,body .gform_wrapper .gform_footer,
body .elementor-widget:has(> .elementor-widget-container > .elementor-shortcode > .gform_wrapper),
body .e-con:has(> .elementor-widget > .elementor-widget-container > .elementor-shortcode > .gform_wrapper),
body .e-con:has(> .e-con > .elementor-widget > .elementor-widget-container > .elementor-shortcode > .gform_wrapper){min-width:min-content!important}
}

/* Restore the original sizes only for the consultation form's phone link. */
body .elementor.elementor-26370 .elementor-element-783c6b67 .elementor-button{font-size:1.7rem!important}
@media(max-width:767px){
 body .elementor.elementor-26370 .elementor-element-783c6b67 .elementor-button{font-size:1.3rem!important}
}
