/* BMGA shared typography system. Loaded after archived theme/Elementor CSS. */
@font-face {
  font-family: "Gill Sans";
  src: url("/wp-content/uploads/2022/12/Gill-Sans-Light.otf") format("opentype");
  font-style: normal;
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Gill Sans";
  src: url("/wp-content/uploads/2022/12/Gill-Sans-Medium.otf") format("opentype");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

@font-face {
  font-family: "ProductSans";
  src: url("/wp-content/uploads/2022/12/Product-Sans-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ProductSans";
  src: url("/wp-content/uploads/2022/12/Product-Sans-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600 800;
  font-display: swap;
}

:root {
  --bmga-heading-font: "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
  --bmga-body-font: "ProductSans", "Trebuchet MS", Arial, sans-serif;
  --bmga-nav-active: #7650ad;
}

body,
input,
select,
textarea {
  font-family: var(--bmga-body-font) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title,
.eael-dual-header .title,
.eael-dual-header .title span,
.elementor-image-box-title,
.elementor-icon-box-title,
.elementor-accordion-title,
.uael-accordion-title,
.entry-title,
.widget-title {
  font-family: var(--bmga-heading-font) !important;
}

p,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-image-box-description,
.elementor-icon-box-description,
.elementor-accordion .elementor-tab-content,
.uael-accordion-content,
.elementor-testimonial__text,
.entry-content,
.entry-content p {
  font-family: var(--bmga-body-font) !important;
}

a,
button,
input[type="button"],
input[type="submit"],
.elementor-button,
.elementor-button-text,
.menu-link,
.nav-link,
.site-navigation a,
#site-navigation-wrap a,
header a,
footer a {
  font-family: var(--bmga-body-font) !important;
}

/* Forms are retained as commented HTML until a static-safe backend is chosen. */
.elementor-widget-form,
#respond,
.kb-form-wrap,
.bmga-signup-wrap {
  display: none !important;
}

.bmga-newsletter-disabled :is(#block-31, #block-27, #block-37) {
  display: none !important;
}

.bmga-forms-disabled-sidebar .bmga-newsletter-disabled {
  display: none !important;
}

.bmga-forms-disabled-sidebar > #wrapper .content-container.site-container {
  grid-template-columns: minmax(0, 1fr) !important;
}

.bmga-forms-disabled-sidebar #primary {
  width: min(100%, 960px);
  margin-inline: auto;
}

/* Shared navigation interaction states. */
.elementor-8 {
  --e-global-color-a6ae36b: var(--bmga-nav-active);
}

.hfe-nav-menu a.hfe-menu-item:hover,
.hfe-nav-menu a.hfe-menu-item:focus,
.hfe-nav-menu a.hfe-menu-item:focus-visible,
.hfe-nav-menu a.hfe-menu-item:active,
.hfe-nav-menu a.hfe-sub-menu-item:hover,
.hfe-nav-menu a.hfe-sub-menu-item:focus,
.hfe-nav-menu a.hfe-sub-menu-item:focus-visible,
.hfe-nav-menu a.hfe-sub-menu-item:active,
.hfe-nav-menu .current-menu-item a.hfe-menu-item,
.hfe-nav-menu .current-menu-item a.hfe-sub-menu-item,
.hfe-nav-menu .current_page_item a.hfe-menu-item,
.hfe-nav-menu .current_page_item a.hfe-sub-menu-item,
.main-navigation a:hover,
.main-navigation a:focus,
.main-navigation a:focus-visible,
.main-navigation a:active,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a,
.mobile-navigation a:hover,
.mobile-navigation a:focus,
.mobile-navigation a:active,
.hfe-nav-menu .menu-item :is(.hfe-menu-item, .hfe-sub-menu-item):is(:hover, :focus, :focus-visible, :active),
.hfe-nav-menu .current-menu-item :is(.hfe-menu-item, .hfe-sub-menu-item),
.hfe-nav-menu .current_page_item :is(.hfe-menu-item, .hfe-sub-menu-item),
.header-navigation a:is(:hover, :focus, :focus-visible, :active),
.header-navigation .current-menu-item a,
.header-navigation .current_page_item a,
#site-navigation-wrap .dropdown-menu > li > a:is(:hover, :focus, :focus-visible, :active),
#site-navigation-wrap .dropdown-menu > .current-menu-item > a,
#site-navigation-wrap .dropdown-menu > .current_page_item > a {
  color: var(--bmga-nav-active) !important;
}

.hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent a.hfe-menu-item::after {
  background-color: var(--bmga-nav-active) !important;
}

.hfe-pointer__framed .menu-item.parent a.hfe-menu-item::after {
  border-color: var(--bmga-nav-active) !important;
}

/* Keep the primary header action available inside the compact mobile menu. */
@media (max-width: 767px) {
  /* The original mobile header reserved an empty column before the logo. */
  .elementor-location-header .elementor-element-d8bfce5 > .elementor-container {
    align-items: center;
    padding: 0 16px;
  }

  .elementor-location-header .elementor-element-3ed6e23 {
    display: none;
  }

  .elementor-location-header .elementor-element-d844d99 {
    width: 65% !important;
  }

  .elementor-location-header .elementor-element-ffababe {
    width: 35% !important;
  }

  .elementor-location-header .elementor-element-ffababe > .elementor-widget-wrap {
    justify-content: flex-end;
    padding: 0 !important;
  }

  .elementor-location-header .elementor-element-6b96748 {
    width: auto;
    margin: 0 0 0 auto;
  }

  .elementor-location-header .elementor-element-6b96748 .hfe-nav-menu__toggle {
    margin: 0 0 0 auto !important;
  }

  .elementor-location-header .elementor-element-d844d99 > .elementor-widget-wrap {
    justify-content: flex-start;
    padding: 0 !important;
  }

  .elementor-location-header .elementor-element-d74a3a5 {
    width: 138px !important;
    max-width: 138px !important;
    margin: 0 !important;
  }

  .elementor-location-header .elementor-element-d74a3a5 .elementor-widget-container,
  .elementor-location-header .elementor-element-d74a3a5 a,
  .elementor-location-header .elementor-element-d74a3a5 img {
    display: block;
  }

  .elementor-location-header .bmga-mobile-header-cta {
    padding: 14px 15px 18px;
  }

  .elementor-location-header .bmga-mobile-header-cta > a.hfe-menu-item {
    display: flex !important;
    justify-content: center;
    width: 100%;
    padding: 12px 20px !important;
    border-radius: 10px;
    background: var(--bmga-purple, #542889) !important;
    color: #fff !important;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
  }

  .elementor-location-header .bmga-mobile-header-cta > a.hfe-menu-item:hover,
  .elementor-location-header .bmga-mobile-header-cta > a.hfe-menu-item:focus-visible {
    background: var(--bmga-nav-active, #8958bd) !important;
    color: #fff !important;
  }

  #mobile-site-navigation .bmga-mobile-header-cta {
    padding: 16px 20px;
  }

  #mobile-site-navigation .bmga-mobile-header-cta > a {
    justify-content: center;
    border: 0 !important;
    border-radius: 10px;
    background: var(--bmga-purple, #542889);
    color: #fff !important;
    font-weight: 600;
    text-align: center;
  }

  #mobile-site-navigation .bmga-mobile-header-cta > a:hover,
  #mobile-site-navigation .bmga-mobile-header-cta > a:focus-visible {
    background: var(--bmga-nav-active, #8958bd);
    color: #fff !important;
  }
}
