/* WP2Static UI Polyfill — sticky header + utility */
header.fusion-header-wrapper, #masthead, header.site-header, header#header, .header-main {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000;
    transition: box-shadow .2s ease, padding .2s ease;
}
header.wp2s-scrolled {
    box-shadow: 0 2px 12px rgba(0,0,0,.08);
    background: rgba(255,255,255,.98) !important;
    backdrop-filter: blur(6px);
}
/* Hide Avada slider loading spinner — Avada JS removes it normally,
   but we strip that JS, so it would stay forever. Hide it always. */
.fusion-slider-loading, .fusion-slider-loading-progress, .fusion-slider-loading-progress-bar,
.fusion-loader, .fusion-page-loading, .fusion-preloader,
#preloader, #fusion-preloader, .preloader-wrap, .preloader { display: none !important; }
/* Ensure slider slides themselves stay visible if loader was hiding them */
.fusion-slider, .fusion-slider-sc, .flexslider, .fusion-flexslider { opacity: 1 !important; visibility: visible !important; }

/* Desktop menu must NEVER be hidden by our polyfill — guard against accidental display:none */
@media (min-width: 800px) {
    .fusion-main-menu, nav.fusion-main-menu, .fusion-main-menu > ul,
    .fusion-menu, ul.fusion-menu { display: block !important; }
    .fusion-main-menu > ul, .fusion-menu { display: flex !important; }
}

/* Make sure toggle/accordion content can be shown */
.fusion-toggle-content, .elementor-tab-content, .elementor-accordion-content,
.panel-collapse, .accordion-content, .collapse { display: none; }
.fusion-toggle-content.fusion-toggle-content-open,
.elementor-tab-content.active, .elementor-accordion-content.active,
.panel-collapse.in, .panel-collapse.show, .collapse.in, .collapse.show,
.accordion-content.active { display: block !important; }
.fusion-toggle-heading, .elementor-tab-title, .elementor-accordion-title,
.panel-heading[role="tab"], .accordion-toggle, [data-toggle="collapse"] {
    cursor: pointer; user-select: none;
}
/* v1.3.9: Pages where sidebar is removed (contact-us etc.) — make content full-width */
body.wp2s-no-sidebar #content,
body.wp2s-no-sidebar section#content,
body.wp2s-no-sidebar .fusion-content-widget-area-wrapper,
body.wp2s-no-sidebar .has-sidebar #content {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    float: none !important;
}
body.wp2s-no-sidebar #sidebar,
body.wp2s-no-sidebar aside#sidebar,
body.wp2s-no-sidebar .fusion-sidebar { display: none !important; }
body.wp2s-no-sidebar .has-sidebar #main .fusion-row { display: block !important; }

/* Avada search overlay — hidden permanently when our inline search is used (v1.3.8). */
.fusion-overlay-search { display: none !important; }

/* Modal styling */
.modal { display: none; position: fixed; inset: 0; z-index: 10000;
    background: rgba(0,0,0,.5); align-items: center; justify-content: center; }
.modal.in, .modal.show, .modal.active { display: flex !important; }
.modal-dialog { background: #fff; max-width: 600px; max-height: 80vh; overflow-y: auto;
    border-radius: 8px; padding: 20px; box-shadow: 0 10px 40px rgba(0,0,0,.2); }
.modal .close, .modal-close { cursor: pointer; font-size: 24px; background: none;
    border: none; position: absolute; top: 10px; right: 16px; color: #666; }
/* Mobile menu */
@media (max-width: 800px) {
    .fusion-mobile-menu, .mobile-menu, .menu-mobile { display: none; }
    .fusion-mobile-menu.wp2s-open, .mobile-menu.wp2s-open, .menu-mobile.wp2s-open {
        display: block !important; position: absolute; top: 100%; left: 0; right: 0;
        background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,.1); padding: 20px; z-index: 999;
    }
}

/* Homepage hero slider (Smart Slider 3) prev/next arrows: broken empty <img>
   tags in the export were replaced with inline SVG chevrons; color set here
   (brand green, matches the site's --ast-global-color-0) so it can be tweaked
   in one place. */
.nextend-arrow-previous, .nextend-arrow-next { color: #1BAE70; }
.nextend-arrow-previous:hover, .nextend-arrow-next:hover { color: #158F5B; }

/* Sticky header */
#masthead.site-header {
    position: sticky;
    top: 0;
    z-index: 999;
    background: #fff;
}

/* "Interested? Shop This PPE!" section banner (shop-this-ppe-banner.png):
   theme CSS had background-size:cover, which massively over-zoomed this
   wide/short image and made it overlap the heading/button above it.
   Use contain so it scales down to fit within the section's reserved
   bottom padding instead. */
.elementor-element-affd82b {
    background-size: contain !important;
}

/* "Respiratory/Fall/Hand Protection" 3-card section: each column reserves
   large top padding (300-400px) for its own background-image icon, but
   those 3 icon images (uploads/2022/01 and 2022/03) were never captured by
   the export, leaving an empty gray gap above each card's product photo.
   Collapse the reserved space since there's nothing to fill it. */
.elementor-element-9e2351a > .elementor-element-populated,
.elementor-element-0b6e081 > .elementor-element-populated,
.elementor-element-eca0892 > .elementor-element-populated {
    padding-top: 32px !important;
}

/* Math captcha (contact form) */
.wpforms-math-captcha-row { display: flex; align-items: center; gap: 10px; margin-top: 6px; }
.wpforms-math-captcha-question { font-weight: 600; white-space: nowrap; }
.wpforms-math-captcha-input { max-width: 120px; }

/* Contact form (WPForms): the plugin's own stylesheet was never captured by
   the export, so the select dropdown and submit button were falling back to
   unstyled browser defaults. Restyle them to match the rest of the form. */
#wpforms-2812 select.wpforms-field-large {
    display: block;
    width: 100%;
    padding: 10px 36px 10px 14px;
    background-color: #f7f7f9;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 15px;
    color: #333;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
}
#wpforms-2812 .wpforms-submit {
    background-color: #1BAE70;
    color: #fff;
    border: none;
    border-radius: 30px;
    padding: 14px 32px;
    font-weight: 600;
    letter-spacing: .5px;
    cursor: pointer;
    text-transform: uppercase;
    font-size: 14px;
    transition: background-color .2s;
}
#wpforms-2812 .wpforms-submit:hover {
    background-color: #158F5B;
}
