/* =============================================================
   BUTTONS — IFA STYLES
   All button variants: utility classes, Divi module classes,
   global Divi overrides, and the donate menu item.
   Extracted from style.css
   ============================================================= */

/* === UTILITY BUTTON CLASSES === */

/* View Button - IFA Primary */
.view-btn {
  background: var(--ifa-dark-blue) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.view-btn:active,
.view-btn:hover {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
}

/* Contact Button - IFA Purple */
.form-group .btn-contact {
  background: var(--ifa-purple) !important;
  border: 1px solid var(--ifa-purple) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.form-group .btn-contact:hover,
.form-group .btn-contact:active {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
  opacity: 1 !important;
}

/* Blog "Read More" Link - IFA Primary */
.more-link {
  background: var(--ifa-dark-blue) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.more-link:hover,
.more-link:active {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
}

/* Dark Button - Light mint bg, dark blue text */
.drk-btn,
body .drk-btn,
#page-container .drk-btn {
  background: var(--ifa-light-mint) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: var(--ifa-dark-blue) !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.drk-btn:hover,
.drk-btn:active,
body .drk-btn:hover,
body .drk-btn:active,
#page-container .drk-btn:hover,
#page-container .drk-btn:active {
  background: var(--ifa-dark-blue) !important;
  border-color: var(--ifa-dark-blue) !important;
  color: #fff !important;
}

/* === SITE-WIDE IFA DIVI BUTTON CLASSES === */

/* Primary (Dark Blue) */
.et_pb_button.ifa-primary,
.et_pb_button.ifa-navy {
  background: var(--ifa-dark-blue) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_button.ifa-primary:hover,
.et_pb_button.ifa-navy:hover {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
}

/* Secondary (Dark Teal) */
.et_pb_button.ifa-secondary,
.et_pb_button.ifa-teal {
  background: var(--ifa-dark-teal) !important;
  border: 1px solid var(--ifa-dark-teal) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_button.ifa-secondary:hover,
.et_pb_button.ifa-teal:hover {
  background: var(--ifa-dark-blue) !important;
  border-color: var(--ifa-dark-blue) !important;
  color: #fff !important;
}

/* Ghost / Outline */
.et_pb_button.ifa-ghost {
  background: transparent !important;
  color: var(--ifa-dark-blue) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_button.ifa-ghost:hover {
  background: var(--ifa-dark-blue) !important;
  color: #fff !important;
  border-color: var(--ifa-dark-blue) !important;
}

/* Green Accent */
.et_pb_button.ifa-green {
  background: var(--ifa-green) !important;
  border: 1px solid var(--ifa-green) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_button.ifa-green:hover {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
}

/* Light Button (Purple) */
body .et_pb_button.light-btn,
body a.et_pb_button.light-btn,
#page-container .et_pb_button.light-btn,
#page-container a.et_pb_button.light-btn,
body .et_pb_button_module_wrapper .et_pb_button.light-btn,
body .et_pb_button_module_wrapper a.et_pb_button.light-btn,
#page-container .et_pb_button_module_wrapper .et_pb_button.light-btn,
#page-container .et_pb_button_module_wrapper a.et_pb_button.light-btn {
  background: var(--ifa-purple) !important;
  border: 1px solid var(--ifa-purple) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}

/* Light Button Two (White → Purple on hover) */
body .et_pb_button.light-btn-two,
body a.et_pb_button.light-btn-two,
#page-container .et_pb_button.light-btn-two,
#page-container a.et_pb_button.light-btn-two,
body .et_pb_button_module_wrapper .et_pb_button.light-btn-two,
body .et_pb_button_module_wrapper a.et_pb_button.light-btn-two,
#page-container .et_pb_button_module_wrapper .et_pb_button.light-btn-two,
#page-container .et_pb_button_module_wrapper a.et_pb_button.light-btn-two {
  background: #fff !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: var(--ifa-dark-blue) !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
body .et_pb_button.light-btn-two:hover,
body a.et_pb_button.light-btn-two:hover,
#page-container .et_pb_button.light-btn-two:hover,
#page-container a.et_pb_button.light-btn-two:hover,
body .et_pb_button_module_wrapper .et_pb_button.light-btn-two:hover,
body .et_pb_button_module_wrapper a.et_pb_button.light-btn-two:hover,
#page-container .et_pb_button_module_wrapper .et_pb_button.light-btn-two:hover,
#page-container .et_pb_button_module_wrapper a.et_pb_button.light-btn-two:hover {
  background: var(--ifa-purple) !important;
  border-color: var(--ifa-purple) !important;
  color: #fff !important;
}

/* === DONATE MENU ITEM ===
   WP menu editor puts .et_pb_button.light-btn-two on the <li>, so the
   global light-btn-two rules leak button bg/border/padding onto the list
   item. Fix: reset the <li>, move button appearance onto the <a>. */

/* 1. Reset button styles leaking onto the <li> */
#page-container .et_pb_menu .menu-item.et_pb_button.light-btn-two,
#page-container .et_pb_fullwidth_menu .menu-item.et_pb_button.light-btn-two,
#page-container .et_mobile_menu > li.et_pb_button.light-btn-two {
  background: none !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* 2. Style the inner <a> as the IFA light-btn-two button */
.et_pb_menu .menu-item.et_pb_button.light-btn-two > a,
.et_pb_fullwidth_menu .menu-item.et_pb_button.light-btn-two > a,
.et_pb_menu .menu-item.donate-menu-trigger > a,
.et_pb_fullwidth_menu .menu-item.donate-menu-trigger > a,
.et_mobile_menu > li.donate-menu-trigger > a {
  background: #fff !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: var(--ifa-dark-blue) !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_menu .menu-item.et_pb_button.light-btn-two > a:hover,
.et_pb_fullwidth_menu .menu-item.et_pb_button.light-btn-two > a:hover,
.et_pb_menu .menu-item.donate-menu-trigger > a:hover,
.et_pb_fullwidth_menu .menu-item.donate-menu-trigger > a:hover,
.et_mobile_menu > li.donate-menu-trigger > a:hover {
  background: var(--ifa-purple) !important;
  border-color: var(--ifa-purple) !important;
  color: #fff !important;
}

/* 3. Desktop: hide donate item (shortcode [ifa_donate_button] handles it) */
@media only screen and (min-width: 981px) {
  #page-container .et_pb_menu .et-menu > li.donate-menu-trigger {
    display: none !important;
  }
}

/* 4. Mobile/tablet: center the button + clean up mobile nav spacing */
@media only screen and (max-width: 980px) {
  .et_mobile_menu > li.donate-menu-trigger {
    text-align: center !important;
    padding: 10px 20px !important;
    border-bottom: none !important;
  }
  .et_mobile_menu > li.donate-menu-trigger > a {
    width: auto !important;
  }
}

/* Hide Divi button icons for all IFA button variants */
.et_pb_button.ifa-primary:after,
.et_pb_button.ifa-secondary:after,
.et_pb_button.ifa-ghost:after,
.et_pb_button.ifa-green:after,
.et_pb_button.light-btn:after,
.et_pb_button.light-btn-two:after,
.et_pb_button.ifa-navy:after,
.et_pb_button.ifa-teal:after {
  display: none !important;
}

/* === GLOBAL DIVI BUTTON OVERRIDES ===
   Applies IFA dark blue styling to ALL et_pb_button elements site-wide. */
body .et_pb_button:not(.light-btn),
body a.et_pb_button:not(.light-btn),
#page-container .et_pb_button:not(.light-btn),
#page-container a.et_pb_button:not(.light-btn),
body .et_pb_button_module_wrapper .et_pb_button:not(.light-btn),
body .et_pb_button_module_wrapper a.et_pb_button:not(.light-btn),
#page-container .et_pb_button_module_wrapper .et_pb_button:not(.light-btn),
#page-container .et_pb_button_module_wrapper a.et_pb_button:not(.light-btn) {
  background: var(--ifa-dark-blue) !important;
  border: 1px solid var(--ifa-dark-blue) !important;
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .25s, border-color .25s, color .25s !important;
}
.et_pb_button:after,
a.et_pb_button:after {
  display: none !important;
}

/* High-specificity hover */
body .et_pb_button:not(.light-btn):hover,
body a.et_pb_button:not(.light-btn):hover,
#page-container .et_pb_button:not(.light-btn):hover,
#page-container a.et_pb_button:not(.light-btn):hover,
body .et_pb_button_module_wrapper .et_pb_button:not(.light-btn):hover,
body .et_pb_button_module_wrapper a.et_pb_button:not(.light-btn):hover,
#page-container .et_pb_button_module_wrapper .et_pb_button:not(.light-btn):hover,
#page-container .et_pb_button_module_wrapper a.et_pb_button:not(.light-btn):hover {
  background: var(--ifa-dark-teal) !important;
  border-color: var(--ifa-dark-teal) !important;
  color: #fff !important;
  transition: background .25s ease, border-color .25s ease, color .25s ease !important;
}
