
/* v1.4 mobile menu + icon fallbacks */
@media (max-width: 75rem) {
  #g-header .g-menu-block, #g-top .g-menu-block { display: none !important; }
  .g-offcanvas-toggle, .g-offcanvas-hide.g-offcanvas-toggle {
    display: block !important;
    position: fixed !important;
    top: 12px !important;
    right: 12px !important;
    left: auto !important;
    z-index: 20001 !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.22) !important;
    border: 1px solid rgba(0,0,0,.08) !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .g-offcanvas-toggle i, .g-offcanvas-toggle .fa, .g-offcanvas-toggle .fas { display: none !important; }
  .g-offcanvas-toggle::before {
    content: '';
    position: absolute;
    left: 12px;
    right: 12px;
    top: 14px;
    height: 3px;
    background: #2d3d4d;
    border-radius: 3px;
    box-shadow: 0 9px 0 #2d3d4d, 0 18px 0 #2d3d4d;
  }
}
@media (min-width: 75.01rem) {
  .g-offcanvas-toggle { display: none !important; }
}
html.g-offcanvas-open, html.g-offcanvas-opening, html.g-offcanvas-closing,
body.g-offcanvas-open, body.g-offcanvas-opening, body.g-offcanvas-closing { overflow: hidden !important; }
html.g-offcanvas-open #g-offcanvas, html.g-offcanvas-opening #g-offcanvas,
body.g-offcanvas-open #g-offcanvas, body.g-offcanvas-opening #g-offcanvas {
  display: block !important; z-index: 20000 !important;
}
html.g-offcanvas-open .g-nav-overlay, html.g-offcanvas-opening .g-nav-overlay,
body.g-offcanvas-open .g-nav-overlay, body.g-offcanvas-opening .g-nav-overlay {
  position: fixed !important; inset: 0 !important; opacity: 1 !important; z-index: 19999 !important; background: rgba(0,0,0,.55) !important;
}
#g-offcanvas { background: #fff !important; }
#g-offcanvas, #g-offcanvas a, #g-offcanvas .g-menu-item-container, #g-offcanvas .g-title, #g-mobilemenu-container, #g-mobilemenu-container a { color: #2d3d4d !important; }
#g-mobilemenu-container .g-menu-parent-indicator:after,
#g-header .g-main-nav .g-menu-parent-indicator:after,
#g-top .g-main-nav .g-menu-parent-indicator:after,
.g-main-nav .g-sublevel>li.g-parent .g-menu-parent-indicator:after {
  font-family: Arial, sans-serif !important; font-weight: 700 !important; content: '›' !important;
}
.rev_slider_wrapper .tp-leftarrow:before, .rev_slider_wrapper .tp-rightarrow:before {
  font-family: Arial, sans-serif !important; font-weight: 700 !important; display: inline-block !important;
}
.rev_slider_wrapper .tp-leftarrow:before { content: '‹' !important; }
.rev_slider_wrapper .tp-rightarrow:before { content: '›' !important; }
/* direct fallbacks for common visible FA icons */
.fa-shopping-cart:before { content: '🛒' !important; font-family: Arial, sans-serif !important; }
.fa-search:before { content: '⌕' !important; font-family: Arial, sans-serif !important; }
.fa-angle-up:before { content: '↑' !important; font-family: Arial, sans-serif !important; }
.fa-file-pdf:before, .fas.fa-file-pdf:before { content: 'PDF' !important; font-family: Arial, sans-serif !important; font-size: .78em !important; font-weight: 700 !important; }
.fa-envelope-o:before { content: '✉' !important; font-family: Arial, sans-serif !important; }
.fa-phone:before { content: '☎' !important; font-family: Arial, sans-serif !important; }
.fa-map-marked-alt:before { content: '⌖' !important; font-family: Arial, sans-serif !important; }
