/* ==========================================================================
   elsonelectric.com — site-wide "no button animation" override (DRAFT, not deployed)
   Approach copied from LV page 8640 WPBakery Custom CSS (.lv-page / .lv-btn-static rules):
   transition:none; animation:none; plus hover-motion reset.
   Differences vs LV rule:
     - scoped to button selectors only (no [class*="btn"], no *),
     - does NOT set transform:none on button icons/chevrons, because WPBakery positions
       .vc_btn3-icon / .vc_btn3-icon-inner with static transform: translate(0,-50%) — a blanket
       transform:none would drop chevrons ~half their height. Only hover/active/focus transforms
       that cause motion are reset.
   Colours, fonts, sizes, borders and chevron glyphs are untouched; hover colour change becomes instant.
   Load after js_composer_front_custom.css / theme style.min.css (e.g. plugin enqueue, priority 999).
   ========================================================================== */

/* 1. WPBakery buttons (vc_btn3: flat / custom / gradient-custom / outline-custom),
      incl. Formidable submit rendered as vc_btn3, grid "load more", grid-item buttons.
      Sources: js_composer_front_custom.css (.vc_general.vc_btn3 {transition: all .2s}),
      per-button inline <style> (button.vc_btn3-style-gradient-custom.vc_btn-gradient-btn-* {transition: all .2s}),
      uploads/js_composer/custom.css (.vc_grid .vc_grid-item .vc_btn3, .vc_pageable-load-more-btn .vc_btn3 {transition: all .25s}) */
.vc_general.vc_btn3,
.vc_general.vc_btn3::before,
.vc_general.vc_btn3::after,
.vc_general.vc_btn3 .vc_btn3-icon,
.vc_general.vc_btn3 .vc_btn3-icon-inner,
.vc_btn3-container .vc_btn3,
.vc_grid .vc_grid-item .vc_btn3,
.vc_pageable-load-more-btn .vc_btn3,
.vc_gitem-animate .vc_btn,
.vc_btn,
.wpb_button {
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-animation: none !important;
  animation: none !important;
}

/* 2. Scroll-reveal on button wrappers (wpb_animate_when_almost_visible + wpb_left-to-right /
      wpb_bottom-to-top / wpb_top-to-bottom on .vc_btn3-container; animate.min.css + js_composer JS).
      Show them in place immediately. */
.vc_btn3-container.wpb_animate_when_almost_visible,
.vc_btn3-container.wpb_animate_when_almost_visible.wpb_start_animation,
.vc_btn3-container.animated {
  opacity: 1 !important;
  -webkit-animation: none !important;
  animation: none !important;
  -webkit-transform: none !important;  /* wrapper only; never the icon */
  transform: none !important;
}

/* 3. Theme (Prague) buttons: .a-btn / .a-btn-2 (simple + creative border-draw), e.g. .protected-btn.a-btn-2.creative
      on /employee/* password forms. Source: themes/prague/assets/css/style.min.css */
.a-btn, .a-btn::before, .a-btn::after,
.a-btn .a-btn-line, .a-btn .a-btn-line::before, .a-btn .a-btn-line::after,
.a-btn-2, .a-btn-2::before, .a-btn-2::after,
.a-btn-2 .a-btn-line, .a-btn-2 .a-btn-line::before, .a-btn-2 .a-btn-line::after,
.protected-btn {
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-animation: none !important;
  animation: none !important;
}

/* 4. Form submit buttons (Formidable plain .frm_button_submit; theme contact form input[type=submit]).
      Sources: formidableforms.css, prague style.min.css (.contact-form--simple ... .button-wrap {transition:.3s all}) */
.frm_button_submit,
.with_frm_style .frm_submit button,
.with_frm_style .frm_submit input[type="submit"],
.contact-form--simple .contact-form__form .button-wrap,
.contact-form--simple .contact-form__form .button-wrap::before,
.contact-form--simple .contact-form__form .button-wrap::after,
.contact-form--simple .contact-form__form .button-wrap input[type="submit"] {
  -webkit-transition: none !important;
  transition: none !important;
}
/* NB: the Formidable loading spinner (.frm_loading_form .frm_button_submit:before {animation: spin})
   is intentionally left running — it is a progress indicator, not hover motion. Uncomment to stop it:
.with_frm_style .frm_loading_form .frm_button_submit::before { animation: none !important; } */

/* 5. Popup Maker CTA + close, our plugin's filter-bar arrows, 404 button, theme misc button-links */
.pum-cta-wrapper .pum-cta,
.pum-close,
.esap-fb-btn,
body.error404 .prague-error-wrapper a.error-btn,
.det-tags .tags-button a,
.post-detailed .prague-post-content .wp-block-button__link,
.banner-slider-wrap .btn-scroll-down {
  -webkit-transition: none !important;
  transition: none !important;
}

/* 6. Hover motion resets (transforms that only apply on :hover) */
body.error404 .prague-error-wrapper a.error-btn:hover,
body.error404 .prague-error-wrapper a.error-btn:focus {
  -webkit-transform: none !important;
  transform: none !important;            /* was translateY(-2px) lift, uploads/js_composer/custom.css */
}
.prague_categories_btn .categories_btn .fa {
  -webkit-transition: none !important; transition: none !important;
}
.prague_categories_btn .categories_btn_up:hover .fa,
.prague_categories_btn .categories_btn_down:hover .fa {
  -webkit-transform: none !important;
  transform: none !important;            /* was translateY(±10px), style.min.css */
}

/* ---------------------------------------------------------------------------
   SCREENSHOT CHECKLIST (before / after, desktop 1440 + mobile 390, hover state too)
   1. /                     .vc_btn3-style-gradient-custom (hero/service CTAs, gradient slide on hover)
                            + .vc_btn3-container.wpb_animate_when_almost_visible.wpb_left-to-right
                            + footer .frm_button_submit.vc_btn3-style-custom
   2. /projects/            .vc_grid .vc_grid-item .vc_btn3 (cards), .vc_pageable-load-more-btn .vc_btn3,
                            .vc_gitem-animate zone-b .vc_btn, mobile .esap-fb-btn
   3. /about/our-team/      .vc_btn3.vc_btn3-icon-right (chevron position must not move), gradient-custom
   4. /employee/            button.protected-btn.a-btn-2.creative (border-draw hover)
   5. /services/low-voltage/ control: already static via page CSS (.lv-btn-static "CONTACT OUR TEAM") — must look identical
   Extra: /contact/ (Formidable submit), any 404 URL (a.error-btn lift)
   --------------------------------------------------------------------------- */
