/**
 * Neon Safety – theme styles (things the page builder used to do with JS
 * or that lived in the previous child theme).
 */

/* ---- Product add-ons (from the previous child theme) ---- */
.product-addons label{display:block;margin-bottom:30px}
.product-addons label div{display:flex;align-items:center;gap:10px}
.product-addons label img{width:60px;height:auto;max-height:100px;border:0}
.product-addons p{margin:0 0 5px}
.product-addons .amount{font-weight:bold}

/* ---- Nav menu (replaces the smartmenus script) ---- */
.elementor-nav-menu--main .elementor-nav-menu li.neon-open > ul,
.elementor-nav-menu--main .elementor-nav-menu li:focus-within > ul{display:block}
.elementor-nav-menu--dropdown .elementor-nav-menu li.neon-open > ul{display:block}
.elementor-nav-menu .sub-arrow{display:flex;align-items:center}

/* ---- Popups ---- */
.neon-popup{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;pointer-events:all}
.neon-popup[hidden]{display:none}
.neon-popup__overlay{position:absolute;inset:0;background-color:rgba(0,0,0,.8)}
.neon-popup__dialog{position:relative;background:#fff;max-width:calc(100vw - 30px);max-height:calc(100vh - 30px);overflow:auto;box-sizing:border-box;animation:neonFadeIn .3s ease}
.neon-popup__close{position:absolute;top:10px;right:10px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;margin:0;background:none;border:0;cursor:pointer;z-index:2;color:#000;font-size:20px}
.neon-popup__close svg{width:1em;height:1em;fill:currentColor}
.neon-popup__close:hover,.neon-popup__close:focus{background:none;color:#555}
body.neon-popup-open{overflow:hidden}
@keyframes neonFadeIn{from{opacity:0}to{opacity:1}}

/* ---- Form messages ---- */
.elementor-form .elementor-message{margin:10px 0;font-size:1em;line-height:1}
.elementor-form .elementor-message.elementor-message-success{color:#5cb85c}
.elementor-form .elementor-message.elementor-message-danger{color:#d9534f}
.elementor-form .elementor-field-group .elementor-error{color:#d9534f;font-size:.85em;display:block;margin-top:4px}
.elementor-form.neon-sending{opacity:.6;pointer-events:none}

/* ---- Fallback header/footer (only before templates are imported) ---- */
.neon-fallback-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid #eee}
.neon-fallback-header .site-navigation ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}
.neon-fallback-footer{padding:2rem;text-align:center;border-top:1px solid #eee}

/* ---- Search / classic templates ---- */

