/*
 * Free Trial Templates — Template 3 (slug: template-2)
 * Loaded on the frontend only when Template 3 (template-2) is active.
 * Scope rules with: body.bmhft-template-2
 */

/* ═══════════════════════════════════════════════════
   GLOBAL SETTINGS — edit only this block to change Template 3's font and colors
   ═══════════════════════════════════════════════════ */
body.bmhft-template-2 {
  /* Font family (used by every font rule below) */
  --site-font: 'Comic Sans MS', cursive, sans-serif;

  /* Global colors — Elementor Site Settings > Global Colors (system colors) */
  --e-global-color-primary: #002746 !important;
  --e-global-color-secondary: #FFFFFF !important;
  --e-global-color-text: #002746 !important;
  --e-global-color-accent: #00C2FF !important;
}

/* ═══════════════════════════════════════════════════
   FONT OVERRIDE — applies --site-font everywhere (no need to edit below)
   ═══════════════════════════════════════════════════ */

/* 1. Override Elementor CSS typography variables (Elementor sets them on body.elementor-kit-N) */
body.bmhft-template-2 {
  --e-global-typography-primary-font-family: var(--site-font) !important;
  --e-global-typography-secondary-font-family: var(--site-font) !important;
  --e-global-typography-text-font-family: var(--site-font) !important;
  --e-global-typography-accent-font-family: var(--site-font) !important;
}

/* 2. ID-anchored selectors — beat Elementor's :not() chain */
body.bmhft-template-2 #page h1, body.bmhft-template-2 #page h2, body.bmhft-template-2 #page h3,
body.bmhft-template-2 #page h4, body.bmhft-template-2 #page h5, body.bmhft-template-2 #page h6,
body.bmhft-template-2 #page p, body.bmhft-template-2 #page a, body.bmhft-template-2 #page li,
body.bmhft-template-2 #page td, body.bmhft-template-2 #page th,
body.bmhft-template-2 #page span, body.bmhft-template-2 #page div,
body.bmhft-template-2 #page label, body.bmhft-template-2 #page caption,
body.bmhft-template-2 #page blockquote, body.bmhft-template-2 #page pre, body.bmhft-template-2 #page code,
body.bmhft-template-2 #page input, body.bmhft-template-2 #page textarea,
body.bmhft-template-2 #page select, body.bmhft-template-2 #page button,
body.bmhft-template-2 #page .elementor-heading-title,
body.bmhft-template-2 #page .elementor-text-editor *,
body.bmhft-template-2 #page .elementor-button-text,
body.bmhft-template-2 #page .elementor-tab-title,
body.bmhft-template-2 #page .elementor-accordion-title {
  font-family: var(--site-font) !important;
}

/* 3. Body */
body.bmhft-template-2 {
  font-family: var(--site-font) !important;
}

/* 4. Restore Elementor eicons */
body.bmhft-template-2 i[class*="eicon-"],
body.bmhft-template-2 [class^="eicon-"],
body.bmhft-template-2 [class*=" eicon-"],
body.bmhft-template-2 .elementor-icon > i,
body.bmhft-template-2 .elementor-icon-box-icon > i,
body.bmhft-template-2 #page i[class*="eicon-"],
body.bmhft-template-2 #page [class^="eicon-"],
body.bmhft-template-2 #page [class*=" eicon-"] {
  font-family: eicons !important;
}

/* 5. Restore Font Awesome 5 */
body.bmhft-template-2 i.fas, body.bmhft-template-2 i.far, body.bmhft-template-2 i.fal,
body.bmhft-template-2 i.fad, body.bmhft-template-2 i[class*="fa-"],
body.bmhft-template-2 span.fas, body.bmhft-template-2 span.far,
body.bmhft-template-2 span.fal, body.bmhft-template-2 span[class*="fa-"],
body.bmhft-template-2 #page i.fas, body.bmhft-template-2 #page i.far,
body.bmhft-template-2 #page i.fal, body.bmhft-template-2 #page i[class*="fa-"],
body.bmhft-template-2 #page span.fas, body.bmhft-template-2 #page span.far,
body.bmhft-template-2 #page span.fal, body.bmhft-template-2 #page span[class*="fa-"] {
  font-family: "Font Awesome 5 Free" !important;
}
body.bmhft-template-2 i.fab, body.bmhft-template-2 span.fab,
body.bmhft-template-2 #page i.fab, body.bmhft-template-2 #page span.fab {
  font-family: "Font Awesome 5 Brands" !important;
}

/* 6. Restore Font Awesome 4 legacy */
body.bmhft-template-2 i.fa, body.bmhft-template-2 span.fa,
body.bmhft-template-2 #page i.fa, body.bmhft-template-2 #page span.fa {
  font-family: FontAwesome !important;
}

/* 7. Restore WordPress Dashicons */
body.bmhft-template-2 .dashicons, body.bmhft-template-2 [class*="dashicons-"],
body.bmhft-template-2 span.dashicons,
body.bmhft-template-2 #page .dashicons, body.bmhft-template-2 #page [class*="dashicons-"] {
  font-family: dashicons !important;
}

/* 8. Restore Swiper & Slick slider icons */
body.bmhft-template-2 .swiper-button-next::after,
body.bmhft-template-2 .swiper-button-prev::after {
  font-family: swiper-icons !important;
}
body.bmhft-template-2 .slick-prev::before,
body.bmhft-template-2 .slick-next::before {
  font-family: slick !important;
}

/* 9. Restore WP Admin Bar icons */
body.bmhft-template-2 #wpadminbar .ab-icon,
body.bmhft-template-2 #wpadminbar .ab-item::before,
body.bmhft-template-2 #wpadminbar > #wp-toolbar > #wp-admin-bar-root-default .ab-icon,
body.bmhft-template-2 .wp-admin-bar-arrow {
  font-family: dashicons !important;
}

/* 10. Angular Material mat-option dropdowns (outside #page scope)
   Extra :not() pseudo-classes boost specificity to beat
   the pre-existing Elementor :not() chain */
body.bmhft-template-2 .cdk-overlay-container mat-option,
body.bmhft-template-2 .cdk-overlay-container mat-option .mat-option-text:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.dashicons):not(.eicons):not(.ab-icon):not(.icon):not(.slick),
body.bmhft-template-2 .cdk-overlay-container mat-option span:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.dashicons):not(.eicons):not(.ab-icon):not(.icon):not(.slick),
body.bmhft-template-2 .mat-select-panel mat-option,
body.bmhft-template-2 .mat-autocomplete-panel mat-option {
  font-family: var(--site-font) !important;
}

/* 11. Fix elements outside #page (header/footer) — :not() chain beats Elementor's */
body.bmhft-template-2 h1:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 h2:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 h3:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 h4:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 h5:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 h6:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 p:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 span:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 div:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 a:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 li:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 label:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick),
body.bmhft-template-2 button:not(.fa):not(.fab):not(.fas):not(.far):not(.fal):not(.ab-icon):not(.dashicons):not([class*="eicon-"]):not([class^="fa-"]):not(.slick) {
  font-family: var(--site-font) !important;
}

/* Fix broken BM plugin menu icons — plugin image files missing on this site */
body.bmhft-template-2 .bm-menu-link img.menu-image[src*="/blindmatrix-v4-hub/assets/image/"],
body.bmhft-template-2 .bm-site-navigation img.menu-image[src*="/blindmatrix-v4-hub/assets/image/"] {
  display: none !important;
}

/* [bm_footer] Company Details shortcodes — navy icon + light text rows */
body.bmhft-template-2 .bmhft-company {
  color: #c3cbe0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}
body.bmhft-template-2 .bmhft-company--has-icon {
  display: flex !important;
  align-items: flex-start;
  gap: 11px;
  margin: 0 0 21px !important;
  padding: 0 !important;
}
body.bmhft-template-2 .bmhft-company__icon {
  display: inline-flex;
  flex: 0 0 auto;
  color: #0f1e3d;
  font-size: 16px;
  line-height: 1;
  /* Center the icon on the first text line (20px line − 16px icon) / 2. */
  padding-top: 2px;
}
/* Text Editor wraps shortcodes in <p>/<br> — let the rows own the spacing. */
body.bmhft-template-2 p:has(> .bmhft-company--has-icon) {
  margin: 0 !important;
}
body.bmhft-template-2 .bmhft-company--has-icon + br {
  display: none;
}
/* Outline icons: keep the footer's "svg { fill }" rules from filling them in. */
body.bmhft-template-2 .bmhft-company__icon svg,
body.bmhft-template-2 .bmhft-company-social svg {
  display: block;
  width: 1em !important;
  height: 1em !important;
  fill: none !important;
  stroke-width: 2;
}
body.bmhft-template-2 .bmhft-company__text {
  color: inherit !important;
  min-width: 0;
  overflow-wrap: anywhere;
}
body.bmhft-template-2 a.bmhft-company:hover,
body.bmhft-template-2 a.bmhft-company:focus {
  color: #FFFFFF !important;
}

/* Social links — white icon in a dark navy circle */
body.bmhft-template-2 .bmhft-company-social {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin: 0 8px 0 0;
  border-radius: 50%;
  background-color: #1e2a47;
  color: #FFFFFF !important;
  font-size: 18px !important;
  line-height: 1 !important;
  vertical-align: middle;
  transition: background-color 0.2s ease;
}
body.bmhft-template-2 .bmhft-company-social:last-child {
  margin-right: 0;
}
body.bmhft-template-2 a.bmhft-company-social:hover,
body.bmhft-template-2 a.bmhft-company-social:focus {
  background-color: #0f1e3d;
  color: #FFFFFF !important;
}
/* Shortcodes on separate lines get <br>s from the Text Editor — keep the icons in one row. */
body.bmhft-template-2 .bmhft-company-social + br {
  display: none;
}

/* Fix HFE submenu arrows — FA4 (FontAwesome) not loaded, override to FA5 */
body.bmhft-template-2 .hfe-menu-toggle.sub-arrow i.fa,
body.bmhft-template-2 .hfe-menu-toggle.sub-arrow i.fa::before {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
}

/* ===== YourBlindShop – Desktop header (min 1025px) ===== */
@media (min-width: 1025px) {

  /* Header bar */
  /* --bmhft-primary is the Branding → Theme Style color when one is chosen. */
  .elementor-element-60ee19fc {
    background: var(--bmhft-primary, #0a1628) !important;
    transition: background .25s ease;
  }
  .elementor-element-60ee19fc.bm-search-open {
    background: var(--bmhft-primary, linear-gradient(180deg, #0a1628 0%, #12233b 100%)) !important;
  }

  /* Menu links – white */
  .elementor-element-60ee19fc .bm-menu-link,
  .elementor-element-60ee19fc .bm-menu-link .menu-image-title {
    color: #fff !important;
    font-size: 15px;
    font-weight: 500;
  }
  .elementor-element-60ee19fc .bm-main-menu > li > .bm-menu-link svg {
    fill: #fff !important;
    color: #fff !important;
  }
  .elementor-element-60ee19fc .bm-main-menu > li > .bm-menu-link:hover,
  .elementor-element-60ee19fc .bm-main-menu > li > .bm-menu-link:hover .menu-image-title {
    color: #cfd8e6 !important;
  }

  /* Space between logo and menu */
  .elementor-element-60ee19fc .elementor-element-7f096db0 { margin-right: 24px !important; }

  /* Right icons: search, phone, cart */
  .elementor-element-183d427c { width: auto !important; max-width: none !important; }
  .elementor-element-183d427c .elementor-icon-list-items {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    gap: 20px;
    margin: 0 !important;
  }
  .elementor-element-183d427c .elementor-icon-list-item {
    cursor: pointer;
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-element-183d427c .elementor-icon-list-item:after { display: none !important; }
  .elementor-element-183d427c svg {
    fill: #fff !important;
    width: 17px !important;
    height: 17px !important;
  }

  /* Cart icon + red count badge */
  .bm-hdr-cart a { position: relative; display: inline-flex; }
  .bm-hdr-cart .bm-cart-count {
    position: absolute;
    top: -9px;
    right: -9px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 50%;
    background: #e53935;
    color: #fff;
    font: 600 10px/16px Poppins, sans-serif;
    text-align: center;
  }

  /* Search bar – hidden until search icon clicked */
  .elementor-element-60ee19fc .search_container_bm {
    display: none !important;
    padding: 0 0 8px;
  }
  .elementor-element-60ee19fc.bm-search-open .search_container_bm {
    display: flex !important;
    animation: bmSearchIn .2s ease;
  }
  @keyframes bmSearchIn {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: none; }
  }

  /* Dark search input */
  .elementor-element-60ee19fc .search_container_bm .search-icon { display: none !important; }
  .elementor-element-60ee19fc .search_container_bm input.search_products {
    height: 34px !important;
    padding: 0 12px !important;
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    border-radius: 4px !important;
    color: #fff !important;
    font-size: 14px;
    box-shadow: none !important;
  }
  .elementor-element-60ee19fc .search_container_bm input.search_products::placeholder {
    color: rgba(255, 255, 255, .55);
  }
  .elementor-element-60ee19fc .search_container_bm input.search_products:focus {
    border-color: rgba(255, 255, 255, .3) !important;
    outline: none;
  }
}

/* ===== Desktop header – compact height ===== */
@media (min-width: 1025px) {
  body.bmhft-template-2 .header-background-menu {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 56px !important;
    justify-content: center !important;
  }
  body.bmhft-template-2 .header-background-menu .elementor-element-3aa94f90 {
    align-items: center !important;
  }

  /* Logo + menu group */
  body.bmhft-template-2 .header-background-menu .elementor-element-26793b2c {
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 20px !important;
    flex: 1 1 auto !important;
  }

  /* Logo */
  body.bmhft-template-2 .header-background-menu .elementor-element-9c9fe38 { flex: 0 0 auto !important; }
  body.bmhft-template-2 .header-background-menu .bmhft-logo--header {
    display: flex !important;
    align-items: center;
    line-height: 0;
  }
  body.bmhft-template-2 .header-background-menu .bmhft-logo__img {
    width: 180px !important;
    max-width: 180px;
    height: auto !important;
    display: block;
  }

  /* Menu */
  body.bmhft-template-2 .header-background-menu .elementor-element-5452103b { flex: 0 1 auto !important; min-width: 0; }
  body.bmhft-template-2 .header-background-menu .bm-main-menu {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 14px;
  }
  body.bmhft-template-2 .header-background-menu .bm-main-menu > li > a {
    padding: 16px 8px !important;   /* 16px top/bottom controls the bar height */
    white-space: nowrap !important;
  }
  body.bmhft-template-2 .header-background-menu .bm-main-menu > li:first-child > a {
    padding-left: 0 !important;
  }
}

/* Small laptops (1025–1280px) */
@media (min-width: 1025px) and (max-width: 1280px) {
  body.bmhft-template-2 .header-background-menu .elementor-element-26793b2c { gap: 14px !important; }
  body.bmhft-template-2 .header-background-menu .bmhft-logo__img { width: 160px !important; max-width: 160px; }
  body.bmhft-template-2 .header-background-menu .bm-main-menu { gap: 6px; }
}

/* ---------- Menu dropdown arrow – vertically centered with the link text ---------- */
body.bmhft-template-2 .bm-site-navigation .bm-icon-arrow {
  display: flex;
  align-items: center;
  align-self: center;
}
body.bmhft-template-2 .bm-site-navigation .bm-arrow-svg {
  display: block;
}

/* ---------- Blinds sub menu ---------- */
body.bmhft-template-2 .bm-menu-item.productsubclass > .bm-sub-menu.blinds.showmenu {
  flex-direction: column !important;
  width: 250px !important;
}
body.bmhft-template-2 .bm-sub-menu li a:hover { color: #000 !important; }
body.bmhft-template-2 a.hfe-sub-menu-item { color: #000 !important; }

/* ---------- Marquee (copied from blindmatrix-v4-hub/assets/css/frontend.css) ---------- */
body.bmhft-template-2 .marquee-wrapper {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  overflow: clip;
}
body.bmhft-template-2 .marquee-wrapper .marquee-track {
  animation: marquee-scroll 85s linear infinite;
  display: inline-block !important;
  width: max-content !important;
  max-width: none !important;
  white-space: nowrap !important;
}
body.bmhft-template-2 .n2-ss-layer.single-line-marquee.marquee-track {
  display: inline-block !important;
  width: max-content !important;
  max-width: none !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
body.bmhft-template-2 .n2-ss-layer.single-line-marquee.marquee-track .n2-ss-item-content,
body.bmhft-template-2 .n2-ss-layer.single-line-marquee.marquee-track p,
body.bmhft-template-2 .n2-ss-layer.single-line-marquee.marquee-track .item {
  white-space: nowrap !important;
}
body.bmhft-template-2 .marquee-wrapper .item {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
body.bmhft-template-2 .marquee-wrapper .tick {
  margin-left: 40px;
  margin-right: 8px;
}

@keyframes marquee-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ===== Home page (12747) – Why Choose / Find the Perfect Blinds (desktop) ===== */
@media (min-width: 1025px) {

  /* Section widths (1140px) */
  body.bmhft-template-2 .elementor-12747 .elementor-element-78b4dd53,
  body.bmhft-template-2 .elementor-12747 .elementor-element-54115786 {
    width: 100%;
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
  }
  body.bmhft-template-2 .elementor-12747 .elementor-element-53754054 > .e-con-inner {
    max-width: 1140px;
    gap: 10px 20px;
  }

  /* Section headings + intro text */
  body.bmhft-template-2 .elementor-12747 .elementor-element-402a8298 .elementor-heading-title,
  body.bmhft-template-2 .elementor-12747 .elementor-element-809d960 .elementor-heading-title {
    font-size: 36px;
    line-height: 1;
  }
  body.bmhft-template-2 .elementor-12747 .elementor-element-6b5ad409 p,
  body.bmhft-template-2 .elementor-12747 .elementor-element-4a3a425b p {
    font-size: 14px !important;
    line-height: 21px !important;
    margin: 0;
  }

  /* Card shadow + hover lift (both grids) */
  body.bmhft-template-2 .grid-choose-bm > div,
  body.bmhft-template-2 .grid-category-bm .e-con-inner > div {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .1);
    transition: transform .3s, box-shadow .3s;
  }
  body.bmhft-template-2 .grid-choose-bm > div:hover,
  body.bmhft-template-2 .grid-category-bm .e-con-inner > div:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);
    transform: translateY(-4px);
  }

  /* Why Choose – icon + title */
  body.bmhft-template-2 .grid-choose-bm .elementor-widget-image {
    line-height: 0;
    transition: background-color .3s, transform .4s;
  }
  body.bmhft-template-2 .grid-choose-bm > div:hover .elementor-widget-image {
    background-color: var(--primary-color) !important;
  }
  body.bmhft-template-2 .grid-choose-bm .elementor-widget-heading .elementor-heading-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
    transition: color .3s;
  }
  body.bmhft-template-2 .grid-choose-bm > div:hover .elementor-widget-heading .elementor-heading-title {
    color: var(--primary-color) !important;
  }

  /* Card text */
  body.bmhft-template-2 .grid-choose-bm .elementor-widget-text-editor p,
  body.bmhft-template-2 .grid-category-bm .elementor-widget-text-editor p {
    font-size: 14px !important;
    line-height: 21px !important;
    color: #4a5565;
    margin: 0;
  }

  /* Find the Perfect Blinds – title + image zoom */
  body.bmhft-template-2 .grid-category-bm .elementor-widget-heading .elementor-heading-title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
  }
  body.bmhft-template-2 .grid-category-bm .e-con-inner > div .elementor-widget-image {
    overflow: hidden;
    line-height: 0;
  }
  body.bmhft-template-2 .grid-category-bm .e-con-inner > div .elementor-widget-image img {
    transform: scale(1);
    transition: transform 1.2s;
  }
  body.bmhft-template-2 .grid-category-bm .e-con-inner > div:hover .elementor-widget-image img {
    transform: scale(1.1);
  }

  /* Recommended label / value */
  body.bmhft-template-2 .grid-category-bm .bm-rec-label {
    font-size: 12px !important;
    font-weight: 100 !important;
    line-height: 1 !important;
    color: #4a5565 !important;
    margin-bottom: 10px !important;
  }
  body.bmhft-template-2 .grid-category-bm .bm-rec-value {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: #0a0a0a !important;
    margin-bottom: 10px !important;
  }
}

/* ===== YourBlindShop – Footer (desktop) – parent class: .footer-full-bm ===== */
@media (min-width: 1025px) {

  .footer-full-bm {
    /* --bmhft-primary is the Branding → Theme Style color when one is chosen. */
    background: var(--bmhft-primary, linear-gradient(90deg, #1c398e 0%, #1c3a8f 55%, #0f1c45 85%, #0b1530 100%)) !important;
  }
  .footer-full-bm .e-con { background: transparent !important; }

  html body #colophon .footer-full-bm,
  html body #colophon .footer-full-bm * {
    font-family: var(--site-font, Arial, Helvetica, sans-serif) !important;
  }

  .footer-full-bm .elementor-element-53695710,
  .footer-full-bm .elementor-element-98fd00e {
    max-width: 1024px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .footer-full-bm .elementor-element-98fd00e {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .footer-full-bm .elementor-widget-heading h3.elementor-heading-title {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    margin: 0 !important;
  }
  .footer-full-bm .e-con:has(> .elementor-widget-navigation-menu) {
    gap: 14px !important;
  }

  .footer-full-bm .hfe-nav-menu li { margin: 0 !important; padding: 0 !important; }
  .footer-full-bm a.hfe-menu-item {
    color: #e6eaf2 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    padding: 4px 0 !important;
  }
  .footer-full-bm a.hfe-menu-item:hover {
    color: #fff !important;
    text-decoration: underline;
  }

  .footer-full-bm .elementor-element-7609902e { gap: 6px !important; }
  .footer-full-bm .elementor-element-7609902e img { width: 36px !important; height: 36px !important; }

  .footer-full-bm .elementor-element-52ef51ff p {
    color: #a9b6d3 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .footer-full-bm .elementor-element-77eb0f9f .elementor-icon,
  .footer-full-bm .elementor-element-57dd11c2 .elementor-icon,
  .footer-full-bm .elementor-element-1a7f57c8 .elementor-icon {
    color: #0f1e3d !important;
    fill: #0f1e3d !important;
  }
  .footer-full-bm .elementor-element-77eb0f9f svg,
  .footer-full-bm .elementor-element-57dd11c2 svg,
  .footer-full-bm .elementor-element-1a7f57c8 svg {
    fill: #0f1e3d !important;
    width: 14px !important;
    height: 14px !important;
  }
  .footer-full-bm .elementor-element-77eb0f9f p, .footer-full-bm .elementor-element-77eb0f9f a,
  .footer-full-bm .elementor-element-57dd11c2 p, .footer-full-bm .elementor-element-57dd11c2 a,
  .footer-full-bm .elementor-element-1a7f57c8 p, .footer-full-bm .elementor-element-1a7f57c8 a {
    color: #c3cbe0 !important;
    font-size: 12px !important;
  }

  .footer-full-bm .elementor-element-73f91b20 .elementor-heading-title {
    text-align: left !important;
    color: #b8c2d9 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
  }
}

/* [bm_footer_heading] footer column titles (Products / Customer Services / Quick Links) */
.foo-products-title div,
.foo-customer-title div,
.foo-links-title div {
  color: #fff !important;
  font-size: 18px !important;
}

/* Active 2D/3D toggle + "Click 3D to explore" hint popup — primary color background */
body.bmhft-template-2 .visualizer-view-controls__toggle-group .mat-button-toggle.mat-button-toggle-checked,
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup {
  background-color: var(--primary-color, #1f0636) !important;
  color: #fff !important;
}
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup {
  border-color: var(--primary-color, #1f0636) !important;
}
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup::after {
  border-top-color: var(--primary-color, #1f0636) !important;
}
body.bmhft-template-2 .visualizer-view-controls__toggle-group .mat-button-toggle.mat-button-toggle-checked .mat-icon,
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup__text,
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup__close::before {
  color: #fff !important;
}
body.bmhft-template-2 .visualizer-view-controls .visualizer-view-popup__text {
  padding-right: 12px;
}
