/* =====================================================================
   BUTTONS — transitions, primary, outline, active states
   ===================================================================== */

/* --- Base transition --- */
:where(.btn,.contact-btn,.inventory-btn,.dag-btn,.vehicle-card__cta,
  .privacy-contact-btn,.thankyou-btn,.cyp-btn,.ty-btn,
  .wp-block-button__link,.wpforms-submit,.elementor-button,
  button,input[type="submit"]) {
  position: relative;
  overflow: hidden;
  will-change: transform;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    background-color .18s ease,
    border-color .18s ease;
}

/* --- Shimmer effect on hover --- */
:where(.btn,.dag-btn,button.btn,input[type="submit"])::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(110deg,transparent 0%,rgba(255,255,255,.22) 46%,transparent 62%);
  transform: translateX(-140%);
  transition: transform .6s ease;
  pointer-events: none;
}
:where(.btn,.dag-btn,button.btn,input[type="submit"]):hover::before {
  transform: translateX(140%);
}

/* --- Primary button --- */
:where(.btn-primary,.contact-btn--primary,.inventory-btn,
  .dag-btn--primary,.vehicle-lead__submit,.vehicle-card__cta,
  .privacy-contact-btn,.thankyou-btn--primary,
  .cyp-btn--primary,.ty-btn--primary,
  #page .btn,#page .btn-primary,#page .contact-btn,
  #page .contact-btn--primary,#page a.button,
  #page button,#page input[type="submit"],
  #page .wp-block-button__link,#page .wpforms-submit,
  #page .elementor-button,#page .inventory-btn,
  #page .vehicle-card__cta) {
  background: linear-gradient(180deg,#d61828 0%,#a80f1c 100%);
  border-color: #d61828;
  color: #fff;
  border-radius: 999px;
  box-shadow: 0 14px 32px rgba(0,0,0,.32);
}

:where(.btn-primary:hover,.contact-btn--primary:hover,.inventory-btn:hover,
  .dag-btn--primary:hover,.vehicle-lead__submit:hover,.vehicle-card__cta:hover,
  .privacy-contact-btn:hover,.thankyou-btn--primary:hover,
  .cyp-btn--primary:hover,.ty-btn--primary:hover,
  #page .btn:hover,#page .btn-primary:hover,
  #page .contact-btn:hover,#page .contact-btn--primary:hover) {
  border-color: #f2b705;
  background: linear-gradient(180deg,#e11d2f 0%,#b4101d 100%);
  box-shadow: 0 18px 40px rgba(0,0,0,.42);
}

/* --- Outline / ghost button --- */
:where(.btn-outline,.contact-btn--outline,.inventory-reset,
  .dag-btn--ghost,#page .btn-outline,
  #page .contact-btn--outline,#page .inventory-reset,
  #page .dag-btn--ghost) {
  background: #13161d;
  color: #f2b705;
  border: 1px solid rgba(242,183,5,.5);
  border-radius: 999px;
  box-shadow: none;
}

:where(.btn-outline:hover,.contact-btn--outline:hover,
  .inventory-reset:hover,.dag-btn--ghost:hover,
  #page .btn-outline:hover,#page .contact-btn--outline:hover,
  #page .inventory-reset:hover,#page .dag-btn--ghost:hover) {
  background: #1a1e26;
  color: #fff;
  border-color: #f2b705;
}

/* --- Active state --- */
:where(.btn,.contact-btn,.inventory-btn,.dag-btn,.vehicle-card__cta,
  .privacy-contact-btn,.thankyou-btn,.cyp-btn,.ty-btn,
  .contact-form__wrapper button[type="submit"],
  .contact-form__wrapper .wpforms-submit):active {
  transform: translateY(0) scale(.98);
}
