/*
Theme Name: ssoft.shop Blue
Theme URI: https://ssoft.shop
Author: ssoft.shop
Version: 6.1.0
Description: IT Services & WooCommerce Shop — dark theme with animated background.
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
WC requires at least: 8.0
WC tested up to: 9.0
License: GNU General Public License v2 or later
Text Domain: ssoft
*/

html{background:#07090f!important;}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;font-weight:400!important;font-size:15px!important;line-height:1.7!important;background:#07090f!important;color:#e2e8f0!important;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
.entry-content,.page-content,.post-content,.woocommerce-page,.woocommerce,main,#main,#content,#primary,.site-content,.content-area,article,.hentry,.page,.type-page,.woocommerce-shop,.post-type-archive-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account{background:transparent!important;color:inherit!important;}
h1,h2,h3,h4,h5,h6{color:#f0f6fc!important;}
p{color:#4a5568;margin-bottom:1rem;}
a{color:#3d8eff;text-decoration:none;transition:color .2s;}
a:hover{color:#66ffb2;}
img{max-width:100%;height:auto;display:block;}
ul{list-style:none;}
button,input,select,textarea{font-family:'Inter',-apple-system,sans-serif;}

:root{
  --g:#3d8eff;--b:#00c8ff;
  --bg:#07090f;--bg2:#0c0f18;--bg3:#111827;
  --bdr:rgba(255,255,255,0.07);
  --text:#e2e8f0;--muted:#4a5568;--dim:#1e293b;
  --radius:10px;--radius-lg:14px;
  --font:'Inter',-apple-system,sans-serif;
  --mono:'JetBrains Mono','Fira Code',monospace;
}

.container{max-width:1280px;margin:0 auto;padding:0 2rem;}
.section{padding:5rem 0;}
.section-sm{padding:3rem 0;}
.section-alt{background:var(--bg2);}

/* TOPBAR */
.ssoft-topbar{background:rgba(61,142,255,.06);border-bottom:0.5px solid rgba(61,142,255,.12);padding:.4rem 0;font-size:11px;font-weight:500;}
.ssoft-topbar .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.4rem;}
.topbar-live{display:flex;align-items:center;gap:6px;color:var(--g);letter-spacing:.08em;}
.topbar-right{color:var(--muted);}
.topbar-right a{color:var(--g);}
.live-dot{width:6px;height:6px;border-radius:50%;background:var(--g);animation:blink 2s infinite;flex-shrink:0;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.2;}}

/* HEADER */
.site-header{position:sticky;top:0;z-index:500;background:rgba(7,9,15,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:0.5px solid var(--bdr);}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:62px;gap:1rem;}
.site-logo{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.site-logo img{height:38px;width:auto;}
.logo-text{font-size:17px;font-weight:700;color:#f0f6fc;letter-spacing:-.3px;}
.logo-text span{color:var(--g);}

.primary-nav{display:flex;align-items:center;gap:.1rem;flex:1;justify-content:center;}
.primary-nav>a,.nav-item>a{font-size:13px;font-weight:500;color:#c9d1d9;padding:7px 13px;border-radius:7px;transition:all .2s;white-space:nowrap;display:block;}
.primary-nav>a:hover,.nav-item>a:hover{color:#fff;background:var(--bg3);}
.primary-nav>a.active,.nav-item>a.active{color:var(--g);background:rgba(61,142,255,.08);}
.nav-item{position:relative;}
.nav-item>a::after{content:' ▾';font-size:8px;opacity:.4;}
.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:var(--bg2);border:0.5px solid var(--bdr);border-radius:var(--radius);padding:.4rem 0;min-width:210px;z-index:300;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .18s,transform .18s;}
.nav-item:hover .nav-dropdown{opacity:1;pointer-events:all;transform:translateY(0);}
.nav-dropdown a{display:block;font-size:12px;color:var(--muted);padding:7px 16px;transition:all .2s;}
.nav-dropdown a:hover{color:var(--g);background:var(--bg3);padding-left:20px;}

.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.cart-icon-wrap a{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;background:var(--bg2);color:var(--text)!important;padding:7px 14px;border-radius:8px;border:0.5px solid var(--bdr);transition:all .2s;}
.cart-icon-wrap a:hover{border-color:var(--g);color:var(--g)!important;}
.cart-icon-wrap .count{background:var(--g);color:var(--bg);border-radius:10px;font-size:10px;padding:1px 6px;font-weight:700;}
.btn-wa-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;background:#25d366;color:#fff!important;padding:7px 14px;border-radius:8px;border:none;cursor:pointer;transition:opacity .2s;}
.btn-wa-header:hover{opacity:.85;}
.menu-toggle{display:none;background:none;border:0.5px solid var(--bdr);color:var(--text);border-radius:7px;padding:6px 10px;font-size:16px;cursor:pointer;}

/* HERO */
.hero{position:relative!important;min-height:90vh;display:flex;flex-direction:column;justify-content:center;padding:5rem 0 3rem;overflow:hidden;background:var(--bg);}
.hero canvas{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;display:block!important;pointer-events:none;z-index:0;}
.hero .container{position:relative;z-index:2;}
.hero-pill{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.15em;color:var(--g);background:rgba(61,142,255,.07);border:0.5px solid rgba(61,142,255,.2);padding:4px 14px;border-radius:20px;margin-bottom:1.5rem;animation:fadeUp .7s .2s both;}
.hero-title{margin-bottom:1.2rem;animation:fadeUp .7s .4s both;font-size:clamp(2rem,5vw,3.4rem);font-weight:700;line-height:1.15;}
.hero-title .g{color:var(--g);}
.hero-title .b{color:var(--b);}
.hero-sub{font-size:15px;color:var(--muted);line-height:1.85;max-width:540px;margin-bottom:2.2rem;animation:fadeUp .7s .6s both;}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:3rem;animation:fadeUp .7s .8s both;}
.hero-stats{display:flex;gap:3rem;flex-wrap:wrap;animation:fadeUp .7s 1s both;}
.hstat-val{font-size:1.6rem;font-weight:600;color:#f0f6fc!important;}
.hstat-val.g{color:var(--g)!important;}
.hstat-label{font-size:10px;color:var(--muted);letter-spacing:.1em;margin-top:2px;}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:11px 26px;border-radius:9px;cursor:pointer;transition:all .2s;border:none;letter-spacing:.01em;text-decoration:none;font-family:var(--font);}
.btn-primary{background:var(--g);color:var(--bg)!important;}
.btn-primary:hover{opacity:.85;transform:translateY(-2px);}
.btn-outline{background:transparent;color:var(--b)!important;border:0.5px solid rgba(74,158,255,.3);}
.btn-outline:hover{border-color:var(--b);transform:translateY(-2px);}
.btn-ghost{background:var(--bg2);color:var(--text)!important;border:0.5px solid var(--bdr);}
.btn-ghost:hover{border-color:var(--g);color:var(--g)!important;}

/* TRUST BAR */
.trust-bar{background:var(--bg2);border-top:0.5px solid var(--bdr);border-bottom:0.5px solid var(--bdr);padding:.85rem 0;}
.trust-bar .container{display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);}
.trust-item .ti-ico{color:var(--g);font-size:14px;}
.trust-item strong{color:var(--text);font-weight:500;}

/* TICKER */
.status-ticker{background:var(--bg2);border-top:0.5px solid var(--bdr);border-bottom:0.5px solid var(--bdr);padding:.55rem 0;overflow:hidden;white-space:nowrap;}
.ticker-track{display:inline-block;animation:ticker 30s linear infinite;}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.ticker-item{font-size:10px;letter-spacing:.1em;color:var(--muted);margin:0 2rem;font-family:var(--mono);}
.ticker-item .ok{color:var(--g);}
.ticker-item .info{color:var(--b);}
.ticker-item .warn{color:#f59e0b;}

/* SECTION LABELS */
.sec-tag{font-size:10px;letter-spacing:.2em;color:var(--g);font-family:var(--mono);display:block;margin-bottom:.5rem;}
.sec-title{margin-bottom:.6rem;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;}
.sec-sub{font-size:14px;color:var(--muted);line-height:1.8;max-width:520px;margin-bottom:2.5rem;}

/* SERVICES */
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:var(--dim);border-radius:var(--radius-lg);overflow:hidden;}
.service-card{background:var(--bg2);padding:1.75rem;transition:background .3s;position:relative;overflow:hidden;text-decoration:none;display:block;}
.service-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(61,142,255,.07),transparent 70%);opacity:0;transition:opacity .4s;}
.service-card:hover{background:var(--bg3);}
.service-card:hover::before{opacity:1;}
.service-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:1rem;}
.ico-g{background:rgba(61,142,255,.1);}
.ico-b{background:rgba(74,158,255,.1);}
.ico-a{background:rgba(245,158,11,.1);}
.ico-p{background:rgba(139,92,246,.1);}
.ico-r{background:rgba(239,68,68,.1);}
.service-name{font-size:14px;font-weight:600;color:#f0f6fc!important;margin-bottom:6px;}
.service-desc{font-size:12px;color:var(--muted);line-height:1.75;margin:0;}
.service-more{font-size:11px;color:var(--g);margin-top:10px;display:inline-block;opacity:0;transform:translateX(-4px);transition:all .3s;}
.service-card:hover .service-more{opacity:1;transform:translateX(0);}

/* SPY CAMERA SECTION */
.spy-visual{position:relative;border-radius:var(--radius-lg);background:#000;border:0.5px solid var(--bdr);aspect-ratio:4/3;overflow:hidden;}
.spy-scanline{position:absolute;left:0;right:0;height:2px;background:linear-gradient(transparent,rgba(61,142,255,.3),transparent);animation:scanline 3s linear infinite;z-index:3;}
@keyframes scanline{0%{top:0;}100%{top:100%;}}
.spy-overlay{position:absolute;inset:0;z-index:2;background:repeating-linear-gradient(0deg,rgba(61,142,255,.02) 0px,transparent 1px,transparent 3px,rgba(61,142,255,.02) 4px);}
.spy-corner{position:absolute;width:20px;height:20px;border-color:var(--g);border-style:solid;border-width:0;z-index:4;}
.spy-corner.tl{top:12px;left:12px;border-top-width:2px;border-left-width:2px;}
.spy-corner.tr{top:12px;right:12px;border-top-width:2px;border-right-width:2px;}
.spy-corner.bl{bottom:12px;left:12px;border-bottom-width:2px;border-left-width:2px;}
.spy-corner.br{bottom:12px;right:12px;border-bottom-width:2px;border-right-width:2px;}
.spy-cam-icon{font-size:3.5rem;animation:float 3s ease-in-out infinite;}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
.spy-bar-bg{height:2px;background:var(--dim);border-radius:2px;overflow:hidden;}
.spy-bar-fill{height:2px;background:var(--g);border-radius:2px;animation:barFill 4s ease-in-out infinite alternate;}
@keyframes barFill{0%{width:20%;}100%{width:90%;}}
.spy-feature-list{list-style:none;margin:1.25rem 0;}
.spy-feature-list li{display:flex;align-items:flex-start;gap:10px;padding:.6rem 0;border-bottom:0.5px solid var(--dim);font-size:13px;color:var(--muted);line-height:1.6;}
.spy-feature-list li:last-child{border:none;}
.spy-feature-list li .ico{color:var(--g);flex-shrink:0;margin-top:2px;}
.spy-feature-list strong{color:var(--text);font-weight:500;}

/* CAROUSEL */
.ssoft-carousel-wrap{position:relative;padding:0 44px;}
.ssoft-product-swiper{overflow:hidden;}
.product-slide-inner{background:var(--bg2);border:0.5px solid var(--bdr);border-radius:var(--radius);overflow:hidden;transition:all .3s;display:flex;flex-direction:column;height:100%;position:relative;}
.product-slide-inner::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--g);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.product-slide-inner:hover{border-color:rgba(61,142,255,.25);transform:translateY(-4px);}
.product-slide-inner:hover::after{transform:scaleX(1);}
.product-slide-inner img{width:100%;height:130px;object-fit:cover;display:block;}
.slide-no-img{height:130px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;background:rgba(61,142,255,.06);}
.slide-body{padding:.9rem 1rem 1.1rem;flex:1;display:flex;flex-direction:column;}
.slide-cat{font-size:9px;letter-spacing:.13em;color:var(--g);margin-bottom:4px;font-family:var(--mono);}
.slide-name{font-size:13px;font-weight:600;color:#f0f6fc;margin-bottom:4px;line-height:1.4;flex:1;}
.slide-name a{color:inherit;}
.slide-name a:hover{color:var(--g);}
.slide-price{font-size:15px;font-weight:600;color:var(--g);margin:.5rem 0;}
.slide-price del{font-size:11px;color:var(--muted);margin-right:4px;font-weight:400;}
.slide-price ins{text-decoration:none;}
.slide-btn{display:block;text-align:center;font-size:11px;font-weight:600;padding:7px 10px;border-radius:6px;background:rgba(61,142,255,.1);border:0.5px solid rgba(61,142,255,.2);color:var(--g)!important;transition:all .2s;cursor:pointer;margin-top:auto;}
.slide-btn:hover{background:rgba(61,142,255,.22);}
.swiper-btn-prev,.swiper-btn-next{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:36px;height:36px;border-radius:50%;background:var(--bg2);border:0.5px solid var(--bdr);color:var(--text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;}
.swiper-btn-prev{left:0;}.swiper-btn-next{right:0;}
.swiper-btn-prev:hover,.swiper-btn-next:hover{border-color:var(--g);color:var(--g);}
.swiper-pagination{text-align:center;margin-top:1rem;}
.swiper-pagination-bullet{background:var(--muted)!important;opacity:1!important;}
.swiper-pagination-bullet-active{background:var(--g)!important;}

/* WOOCOMMERCE */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))!important;gap:14px!important;margin:0!important;padding:0!important;}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;border-radius:var(--radius)!important;overflow:hidden!important;float:none!important;width:auto!important;margin:0!important;padding:0!important;transition:border-color .3s,transform .3s!important;display:flex!important;flex-direction:column!important;}
.woocommerce ul.products li.product:hover{border-color:rgba(61,142,255,.25)!important;transform:translateY(-4px)!important;}
.woocommerce ul.products li.product img{width:100%!important;height:140px!important;object-fit:cover!important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px!important;font-weight:600!important;color:#f0f6fc!important;padding:0 1rem!important;margin:.7rem 0 .25rem!important;line-height:1.4!important;}
.woocommerce ul.products li.product .price{font-size:15px!important;font-weight:600!important;color:var(--g)!important;padding:0 1rem!important;margin-bottom:.7rem!important;display:block!important;}
.woocommerce ul.products li.product .price del{color:var(--muted)!important;font-size:12px!important;}
.woocommerce ul.products li.product .price ins{text-decoration:none!important;}
.woocommerce ul.products li.product .button{display:block!important;margin:auto 1rem 1rem!important;text-align:center!important;font-size:11px!important;font-weight:600!important;padding:7px 12px!important;border-radius:7px!important;background:rgba(61,142,255,.1)!important;border:0.5px solid rgba(61,142,255,.2)!important;color:var(--g)!important;transition:all .2s!important;box-shadow:none!important;}
.woocommerce ul.products li.product .button:hover{background:rgba(61,142,255,.22)!important;}
.woocommerce-result-count{font-size:12px;color:var(--muted);}
.woocommerce-ordering select{background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;color:var(--text)!important;border-radius:7px!important;padding:6px 12px!important;font-size:12px!important;outline:none!important;}
.woocommerce nav.woocommerce-pagination ul{display:flex;gap:6px;justify-content:center;margin:2rem 0;border:none!important;flex-wrap:wrap;}
.woocommerce nav.woocommerce-pagination ul li{border:none!important;}
.woocommerce nav.woocommerce-pagination ul li span,.woocommerce nav.woocommerce-pagination ul li a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:7px;font-size:13px;background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;color:var(--muted)!important;transition:all .2s;}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:rgba(61,142,255,.1)!important;border-color:rgba(61,142,255,.25)!important;color:var(--g)!important;}
.woocommerce div.product .product_title{color:#f0f6fc!important;font-weight:700!important;}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:2rem!important;font-weight:700!important;color:var(--g)!important;display:block!important;margin:1rem 0!important;}
.woocommerce .quantity .qty{background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;color:var(--text)!important;border-radius:7px!important;padding:8px 12px!important;}
.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.single_add_to_cart_button{background:var(--g)!important;color:var(--bg)!important;border:none!important;border-radius:9px!important;padding:11px 26px!important;font-size:13px!important;font-weight:600!important;box-shadow:none!important;}
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.single_add_to_cart_button:hover{opacity:.85!important;}
.woocommerce-message{background:rgba(61,142,255,.08)!important;border:0.5px solid rgba(61,142,255,.2)!important;border-radius:var(--radius)!important;color:var(--g)!important;padding:1rem 1.25rem!important;}
.woocommerce-error{background:rgba(239,68,68,.08)!important;border:0.5px solid rgba(239,68,68,.2)!important;border-radius:var(--radius)!important;color:#ef4444!important;padding:1rem!important;}
.woocommerce-cart table.shop_table,.woocommerce-checkout table.shop_table{background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;border-radius:var(--radius)!important;border-collapse:separate!important;}
.woocommerce-cart table.shop_table th,.woocommerce-checkout table.shop_table th{background:var(--bg3)!important;color:var(--muted)!important;font-size:11px!important;letter-spacing:.1em!important;padding:.75rem 1rem!important;}
.woocommerce-cart table.shop_table td,.woocommerce-checkout table.shop_table td{border-top:0.5px solid var(--bdr)!important;padding:.85rem 1rem!important;color:var(--text)!important;}
.woocommerce .cart .amount{color:var(--g)!important;font-weight:600!important;}
a.remove{color:var(--muted)!important;font-size:18px!important;}
a.remove:hover{color:#ef4444!important;}
.woocommerce-checkout .form-row label{font-size:12px;color:var(--muted);display:block;margin-bottom:4px;}
.woocommerce-checkout .form-row input,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row textarea{width:100%;background:var(--bg2)!important;border:0.5px solid var(--bdr)!important;color:var(--text)!important;border-radius:7px!important;padding:9px 12px!important;font-size:13px!important;outline:none!important;}
#place_order{background:var(--g)!important;color:var(--bg)!important;border:none!important;border-radius:9px!important;padding:13px 32px!important;font-size:14px!important;font-weight:600!important;width:100%!important;}

/* PRICING */
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;}
.pricing-card{background:var(--bg2);border:0.5px solid var(--bdr);border-radius:var(--radius-lg);padding:2rem 1.5rem;transition:transform .3s;}
.pricing-card:hover{transform:translateY(-4px);}
.pricing-card.popular{border-color:rgba(61,142,255,.3);background:var(--bg3);}
.popular-label{font-size:9px;letter-spacing:.15em;color:var(--g);margin-bottom:1rem;font-family:var(--mono);}
.plan-name{font-size:13px;font-weight:600;color:#f0f6fc!important;}
.plan-price{font-size:2.2rem;font-weight:700;color:#f0f6fc!important;margin:1rem 0 .25rem;}
.plan-price sub{font-size:13px;color:var(--muted);font-weight:400;}
.plan-cycle{font-size:11px;color:var(--muted);margin-bottom:1.5rem;}
.plan-features{margin-bottom:1.75rem;}
.plan-features li{font-size:12px;color:var(--muted);padding:5px 0;border-bottom:0.5px solid var(--dim);display:flex;align-items:center;gap:8px;}
.plan-features li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--g);flex-shrink:0;}
.plan-features li.off::before{background:var(--dim);}
.plan-features li.off{color:var(--dim);}
.btn-plan{width:100%;font-size:12px;font-weight:600;padding:11px;border-radius:8px;cursor:pointer;transition:all .2s;border:none;font-family:var(--font);}
.btn-plan.ghost{background:rgba(61,142,255,.08);color:var(--g);border:0.5px solid rgba(61,142,255,.2);}
.btn-plan.ghost:hover{background:rgba(61,142,255,.15);}
.btn-plan.filled{background:var(--g);color:var(--bg);}
.btn-plan.filled:hover{opacity:.87;}

/* FAQ */
.faq-list{max-width:760px;}
.faq-item{background:var(--bg2);border:0.5px solid var(--bdr);border-radius:var(--radius);margin-bottom:8px;overflow:hidden;transition:border-color .3s;}
.faq-item.open{border-color:rgba(61,142,255,.25);}
.faq-question{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:1.1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;color:#f0f6fc;gap:1rem;font-family:var(--font);}
.faq-question:hover{color:var(--g);}
.faq-arrow{font-size:18px;color:var(--muted);flex-shrink:0;transition:transform .3s,color .3s;}
.faq-item.open .faq-arrow{transform:rotate(45deg);color:var(--g);}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.faq-answer-inner{padding:0 1.25rem 1.1rem;font-size:13px;color:var(--muted);line-height:1.8;}

/* SCROLL REVEAL */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;}
.reveal.done{opacity:1;transform:translateY(0);}
.reveal-scale{opacity:0;transform:scale(.94);transition:opacity .5s ease,transform .5s ease;}
.reveal-scale.done{opacity:1;transform:scale(1);}
.reveal-left{opacity:0;transform:translateX(-24px);transition:opacity .6s ease,transform .6s ease;}
.reveal-left.done{opacity:1;transform:translateX(0);}

/* CTA STRIP */
.cta-strip{background:var(--bg2);border:0.5px solid rgba(61,142,255,.15);border-radius:var(--radius-lg);padding:3rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.cta-strip h2{font-size:1.5rem;margin-bottom:.3rem;}
.cta-strip p{font-size:13px;color:var(--muted);margin:0;}
.cta-strip-btns{display:flex;gap:10px;flex-wrap:wrap;}

/* WHATSAPP */
.wa-bubble{position:fixed;bottom:1.75rem;right:1.75rem;z-index:9999;display:flex;align-items:center;gap:8px;background:#25d366;color:#fff!important;font-size:13px;font-weight:600;padding:12px 20px 12px 16px;border-radius:28px;box-shadow:0 4px 22px rgba(37,211,102,.38);transition:all .3s;opacity:0;transform:translateY(16px);text-decoration:none!important;}
.wa-bubble.show{opacity:1;transform:translateY(0);}
.wa-bubble:hover{transform:translateY(-3px) scale(1.04)!important;color:#fff!important;}

/* FOOTER */
.site-footer{background:var(--bg2);border-top:0.5px solid var(--bdr);padding:4rem 0 2rem;margin-top:5rem;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2rem;}
.footer-brand p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:.75rem;max-width:240px;}
.footer-col h4{font-size:10px;letter-spacing:.15em;color:var(--g);margin-bottom:1rem;font-family:var(--mono);font-weight:700;}
.footer-col ul li{margin-bottom:.5rem;}
.footer-col ul li a{font-size:12px;color:var(--muted);transition:color .2s,padding-left .2s;display:block;}
.footer-col ul li a:hover{color:var(--text);padding-left:4px;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:0.5px solid var(--bdr);flex-wrap:wrap;gap:.5rem;}
.footer-copy{font-size:11px;color:var(--dim);}
.footer-live{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--g);font-weight:600;}

/* RESPONSIVE */
@media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr 1fr;}}
@media(max-width:768px){
  .primary-nav{display:none;flex-direction:column;align-items:flex-start;position:absolute;top:62px;left:0;right:0;background:rgba(7,9,15,.98);border-bottom:0.5px solid var(--bdr);padding:1rem 1.5rem 1.5rem;z-index:400;gap:.25rem;}
  .primary-nav.open{display:flex;}
  .nav-dropdown{position:static;opacity:1;pointer-events:all;transform:none;background:transparent;border:none;border-radius:0;padding:.25rem 0 .25rem .75rem;display:none;min-width:0;}
  .nav-item.open .nav-dropdown{display:block;}
  .menu-toggle{display:flex;}
  .btn-wa-header span{display:none;}
  .hero-stats{gap:1.5rem;}
  .cta-strip{flex-direction:column;text-align:center;}
  .footer-grid{grid-template-columns:1fr;}
  .hero{min-height:70vh;}
  .ssoft-carousel-wrap{padding:0 38px;}
  .trust-bar .container{gap:1rem;}
  .rits-grid{grid-template-columns:1fr!important;gap:2rem!important;}
  .spy-grid{grid-template-columns:1fr!important;}
}
@media(max-width:480px){
  .container{padding:0 1.25rem;}
  .pricing-grid{grid-template-columns:1fr;}
  .hero-stats{gap:1.2rem;}
  .hero-title{font-size:1.8rem;}
  .ssoft-carousel-wrap{padding:0 36px;}
}

/* ============================================================
   SINGLE PRODUCT — fix black text, white backgrounds
============================================================ */
.single-product .product_title,
.woocommerce div.product .product_title { color: #f0f6fc !important; font-weight: 700 !important; font-size: clamp(1.6rem,3vw,2.2rem) !important; }

.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description p,
.single-product .entry-summary p,
.single-product .entry-summary li { color: #c9d1d9 !important; }

/* Tabs — Description, Reviews */
.woocommerce div.product .woocommerce-tabs ul.tabs { border-color: var(--bdr) !important; background: transparent !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: var(--bg2) !important; border-color: var(--bdr) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--muted) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--bg3) !important; border-bottom-color: var(--bg3) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--g) !important; }
.woocommerce div.product .woocommerce-tabs .panel { background: var(--bg2) !important; border: 0.5px solid var(--bdr) !important; border-radius: var(--radius) !important; padding: 1.5rem !important; color: #c9d1d9 !important; }
.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs .panel h3 { color: #f0f6fc !important; margin-bottom: 1rem !important; }
.woocommerce div.product .woocommerce-tabs .panel p,
.woocommerce div.product .woocommerce-tabs .panel li,
.woocommerce div.product .woocommerce-tabs .panel td,
.woocommerce div.product .woocommerce-tabs .panel th { color: #c9d1d9 !important; }
.woocommerce div.product .woocommerce-tabs .panel ul li { color: #c9d1d9 !important; }

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb { color: var(--muted) !important; background: transparent !important; }
.woocommerce .woocommerce-breadcrumb a { color: var(--g) !important; }

/* Price */
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--g) !important; font-size: 1.8rem !important; font-weight: 700 !important; }

/* Add to cart button */
.woocommerce div.product form.cart .button,
.single_add_to_cart_button { background: var(--g) !important; color: var(--bg) !important; border: none !important; border-radius: 9px !important; padding: 12px 28px !important; font-size: 14px !important; font-weight: 600 !important; }
.single_add_to_cart_button:hover { opacity: .85 !important; }

/* Quantity box */
.woocommerce div.product form.cart .qty { background: var(--bg2) !important; border: 0.5px solid var(--bdr) !important; color: var(--text) !important; border-radius: 7px !important; padding: 8px 12px !important; }

/* Product meta (category, SKU) */
.woocommerce div.product .product_meta,
.woocommerce div.product .product_meta span,
.woocommerce div.product .product_meta a { color: var(--muted) !important; }
.woocommerce div.product .product_meta a:hover { color: var(--g) !important; }

/* Gallery */
.woocommerce div.product div.images .woocommerce-product-gallery__image a { border: 0.5px solid var(--bdr) !important; border-radius: var(--radius) !important; overflow: hidden; display: block; }
.woocommerce-product-gallery { background: var(--bg2) !important; border-radius: var(--radius) !important; }

/* Related products heading */
.woocommerce .related h2,
.woocommerce .upsells h2 { color: #f0f6fc !important; margin-bottom: 1.5rem !important; }

/* Reviews form */
.woocommerce #reviews #reply-title { color: #f0f6fc !important; }
.woocommerce #review_form #respond label { color: var(--muted) !important; }
.woocommerce #review_form #respond input,
.woocommerce #review_form #respond textarea { background: var(--bg2) !important; border: 0.5px solid var(--bdr) !important; color: var(--text) !important; border-radius: 7px !important; padding: 9px 12px !important; }
.woocommerce #review_form #respond .form-submit input { background: var(--g) !important; color: var(--bg) !important; border: none !important; border-radius: 9px !important; }

/* Sidebar on product page — hide it or style it */
.single-product .widget-area,
.single-product #secondary { display: none !important; }

/* Fix layout to full width when sidebar hidden */
.single-product #primary { width: 100% !important; float: none !important; }

/* ============================================================
   HIDE SIDEBAR — shop, product, store, all WooCommerce pages
============================================================ */
.woocommerce-page .widget-area,
.woocommerce-page #secondary,
.woocommerce-shop .widget-area,
.woocommerce-shop #secondary,
.single-product .widget-area,
.single-product #secondary,
.post-type-archive-product .widget-area,
.post-type-archive-product #secondary,
#secondary,
.widget-area,
aside.widget-area,
.sidebar,
#sidebar { display: none !important; width: 0 !important; padding: 0 !important; margin: 0 !important; }

/* Make sure main content uses full width when sidebar hidden */
.woocommerce-page #primary,
.single-product #primary,
.post-type-archive-product #primary,
#primary,
.site-main { width: 100% !important; float: none !important; max-width: 100% !important; }

/* Also hide the default WP page sidebar widget output on shop/store pages */
.page-id-shop .widget-area,
.page-template-default .widget-area { display: none !important; }

/* ============================================================
   PRODUCT CARDS — uniform size on shop page AND homepage carousel
============================================================ */

/* Shop archive page — equal height cards */
.woocommerce ul.products,
.woocommerce-page ul.products {
  align-items: stretch !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
}
/* Fixed image height — prevents tall-title cards from stretching */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  display: block !important;
  flex-shrink: 0 !important;
}
/* Title fixed height with overflow */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #f0f6fc !important;
  padding: .6rem 1rem .25rem !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  min-height: 54px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
/* Price always same size */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--g) !important;
  padding: 0 1rem .5rem !important;
  margin: 0 !important;
  display: block !important;
  min-height: 28px !important;
}
/* Button always at bottom */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
  margin: auto 1rem 1rem !important;
}

/* Homepage carousel — same fixed image height */
.product-slide-inner img,
.slide-no-img {
  height: 160px !important;
}
.slide-name {
  min-height: 48px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* ── SPY CAMERA CONFIGURATOR PAGE — full width ── */
.page-template-default .entry-content:has(.scfg-wrap),
body:has(.scfg-wrap) #primary,
body:has(.scfg-wrap) .entry-content,
body:has(.scfg-wrap) main,
body:has(.scfg-wrap) article.page {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
}
body:has(.scfg-wrap) #primary .container,
body:has(.scfg-wrap) .entry-content .container,
body:has(.scfg-wrap) .site-main .container {
  max-width: 100% !important;
  padding: 0 !important;
}

/* ============================================================
   LANGUAGE SWITCHER + HIDE WEGLOT DEFAULT BUTTON
============================================================ */

/* Hide Weglot's default floating button */
.wg-default,
.weglot-container,
#weglot-switcher-0,
[class*="wg-default"],
.country-selector { display: none !important; }

/* Language switcher */
.lang-switcher { position: relative; }
.lang-current {
  display: flex; align-items: center; gap:5px;
  background: var(--bg2); border: 0.5px solid var(--bdr);
  color: var(--text); border-radius: 8px;
  padding: 7px 12px; cursor: pointer; transition: all .2s;
  font-size: 12px; font-weight: 600; font-family: var(--font);
  white-space: nowrap;
}
.lang-current:hover { border-color: var(--g); color: var(--g); }
.lang-globe { font-size: 13px; }
.lang-code { letter-spacing: .05em; }
.lang-arrow { font-size: 8px; opacity: .6; transition: transform .2s; }
.lang-switcher.open .lang-arrow { transform: rotate(180deg); }
.lang-switcher.open .lang-current { border-color: var(--g); color: var(--g); }

.lang-dropdown {
  position: absolute; top: calc(100% + 6px); right: 0;
  background: var(--bg2); border: 0.5px solid var(--bdr);
  border-radius: var(--radius); padding: .4rem 0;
  min-width: 150px; z-index: 600;
  opacity: 0; pointer-events: none; transform: translateY(-6px);
  transition: opacity .18s, transform .18s;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
.lang-switcher.open .lang-dropdown { opacity: 1; pointer-events: all; transform: translateY(0); }

.lang-opt {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 16px; text-decoration: none; transition: all .2s;
  color: var(--muted) !important;
}
.lang-opt:hover { background: var(--bg3); color: var(--text) !important; }
.lang-opt.lang-active { color: var(--g) !important; }
.lang-opt-code { font-size: 10px; font-weight: 700; letter-spacing: .1em; color: var(--g); width: 22px; }
.lang-opt-name { font-size: 12px; flex: 1; }
.lang-check { font-size: 10px; color: var(--g); margin-left: auto; }
/* ssoft.shop Site Enhancements v1.0 */
:root{
  --eh-g:var(--g,#3d8eff);
  --eh-b:var(--b,#00c8ff);
  --eh-bg:var(--bg,#07090f);
  --eh-bg2:var(--bg2,#0c0f18);
  --eh-bg3:var(--bg3,#111827);
  --eh-bdr:var(--bdr,rgba(61,142,255,0.12));
  --eh-bdr2:var(--bdr2,rgba(61,142,255,0.25));
  --eh-text:var(--text,#e8edf8);
  --eh-muted:var(--muted,#4a607a);
  --eh-font:var(--font,'Inter',-apple-system,sans-serif);
  --eh-mono:var(--mono,'JetBrains Mono',monospace);
}

/* ══════════════════════════════════════════
   ① STICKY BAR
══════════════════════════════════════════ */
.ssenh-sticky-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:8888;
  background:rgba(6,13,26,0.97);
  border-top:1px solid var(--eh-bdr2);
  backdrop-filter:blur(16px);
  transform:translateY(100%);
  transition:transform .4s ease;
}
.ssenh-sticky-bar.visible{transform:translateY(0);}
.ssenh-sticky-inner{max-width:1400px;margin:0 auto;padding:.6rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.ssenh-sticky-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.ssenh-sticky-tag{font-size:11px;font-weight:600;color:#25d366;display:flex;align-items:center;gap:5px;white-space:nowrap;}
.ssenh-sticky-services{font-size:12px;color:var(--eh-muted);}
.ssenh-sticky-services a{color:var(--eh-muted);transition:color .2s;}
.ssenh-sticky-services a:hover{color:var(--eh-g);}
.ssenh-dot{margin:0 .4rem;opacity:.4;}
.ssenh-sticky-right{display:flex;align-items:center;gap:8px;}
.ssenh-sticky-btn{display:flex;align-items:center;gap:6px;background:#25d366;color:#fff!important;font-size:12px;font-weight:600;padding:8px 18px;border-radius:4px;text-decoration:none;transition:opacity .2s;white-space:nowrap;}
.ssenh-sticky-btn:hover{opacity:.88;}
.ssenh-sticky-close{background:none;border:none;color:var(--eh-muted);cursor:pointer;font-size:16px;padding:4px 8px;transition:color .2s;}
.ssenh-sticky-close:hover{color:var(--eh-text);}

/* ══════════════════════════════════════════
   ② LIVE VIEWER BADGE
══════════════════════════════════════════ */
.ssenh-live-viewer{
  display:flex;align-items:center;gap:7px;
  background:var(--eh-bg2);border:1px solid var(--eh-bdr2);
  border-radius:20px;padding:6px 14px;
  font-size:12px;color:var(--eh-text);font-weight:500;
  margin:1rem 0;width:fit-content;
}
.ssenh-live-dot{width:8px;height:8px;border-radius:50%;background:#25d366;animation:livepulse 2s infinite;flex-shrink:0;}
@keyframes livepulse{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.4);}50%{box-shadow:0 0 0 6px rgba(37,211,102,0);}}

/* ══════════════════════════════════════════
   ③ QUICK VIEW
══════════════════════════════════════════ */
.ssenh-qv-trigger{
  display:block;width:calc(100% - 2rem);margin:.25rem 1rem .75rem;
  background:transparent;border:0.5px solid var(--eh-bdr2);
  color:var(--eh-g)!important;font-size:11px;font-weight:600;
  padding:7px;border-radius:4px;cursor:pointer;
  font-family:var(--eh-font);letter-spacing:.04em;
  transition:all .2s;
}
.ssenh-qv-trigger:hover{background:rgba(61,142,255,.1);}

.ssenh-modal-overlay{
  position:fixed;inset:0;z-index:9999;
  background:rgba(4,8,15,.85);backdrop-filter:blur(8px);
  display:none;align-items:center;justify-content:center;padding:1rem;
}
.ssenh-modal-overlay.open{display:flex;}
.ssenh-modal{
  background:var(--eh-bg2);border:1px solid var(--eh-bdr2);
  border-radius:12px;max-width:860px;width:100%;
  max-height:90vh;overflow-y:auto;position:relative;
  animation:modalIn .25s ease;
}
@keyframes modalIn{from{opacity:0;transform:scale(.94);}to{opacity:1;transform:scale(1);}}
.ssenh-modal-close{
  position:absolute;top:14px;right:16px;
  background:var(--eh-bg3);border:0.5px solid var(--eh-bdr);
  color:var(--eh-text);border-radius:50%;width:30px;height:30px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:14px;z-index:2;
}
.ssenh-modal-close:hover{border-color:var(--eh-g);color:var(--eh-g);}
.ssenh-qv-inner{display:grid;grid-template-columns:1fr 1fr;min-height:360px;}
.ssenh-qv-img-wrap{background:var(--eh-bg3);border-radius:12px 0 0 12px;display:flex;align-items:center;justify-content:center;padding:2rem;}
.ssenh-qv-img-wrap img{max-width:100%;max-height:280px;object-fit:contain;}
.ssenh-qv-details{padding:2rem;display:flex;flex-direction:column;}
.ssenh-qv-cat{font-size:9px;letter-spacing:.2em;color:var(--eh-b);font-family:var(--eh-mono);margin-bottom:.5rem;}
.ssenh-qv-name{font-size:1.2rem;font-weight:700;color:#f0f6fc;margin-bottom:.75rem;line-height:1.3;}
.ssenh-qv-price{font-size:1.6rem;font-weight:700;color:var(--eh-g);font-family:var(--eh-mono);margin-bottom:.75rem;}
.ssenh-qv-desc{font-size:13px;color:var(--eh-muted);line-height:1.8;margin-bottom:1.25rem;flex:1;}
.ssenh-qv-actions{display:flex;gap:10px;margin-bottom:1rem;flex-wrap:wrap;}
.ssenh-qv-btn-cart{flex:1;text-align:center;background:linear-gradient(135deg,var(--eh-g),#1a6fe0);color:#fff!important;font-size:13px;font-weight:600;padding:11px 20px;border-radius:4px;text-decoration:none;transition:opacity .2s;}
.ssenh-qv-btn-cart:hover{opacity:.88;}
.ssenh-qv-btn-view{flex:1;text-align:center;background:transparent;color:var(--eh-g)!important;font-size:13px;font-weight:600;padding:10px 20px;border-radius:4px;border:1px solid var(--eh-bdr2);text-decoration:none;transition:all .2s;}
.ssenh-qv-btn-view:hover{background:rgba(61,142,255,.08);}
.ssenh-qv-trust{display:flex;gap:1rem;flex-wrap:wrap;font-size:10px;color:var(--eh-muted);}
@media(max-width:640px){.ssenh-qv-inner{grid-template-columns:1fr;}.ssenh-qv-img-wrap{border-radius:12px 12px 0 0;min-height:200px;}}

/* ══════════════════════════════════════════
   ④ ANIMATED COUNTERS (on hero stats)
══════════════════════════════════════════ */
.ssenh-counter{display:inline-block;}

/* ══════════════════════════════════════════
   ⑤ TESTIMONIALS
══════════════════════════════════════════ */
.ssenh-reviews-wrap{overflow:hidden;position:relative;padding:.5rem 0;}
.ssenh-reviews-wrap::before,.ssenh-reviews-wrap::after{
  content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none;
}
.ssenh-reviews-wrap::before{left:0;background:linear-gradient(90deg,var(--eh-bg2),transparent);}
.ssenh-reviews-wrap::after{right:0;background:linear-gradient(-90deg,var(--eh-bg2),transparent);}
.ssenh-reviews-track{
  display:flex;gap:16px;
  animation:scrollReviews 40s linear infinite;
  width:max-content;
}
.ssenh-reviews-track:hover{animation-play-state:paused;}
@keyframes scrollReviews{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.ssenh-review-card{
  background:var(--eh-bg3);border:0.5px solid var(--eh-bdr);
  border-radius:10px;padding:1.25rem 1.4rem;
  width:300px;flex-shrink:0;transition:border-color .25s;
}
.ssenh-review-card:hover{border-color:var(--eh-bdr2);}
.ssenh-review-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:.9rem;}
.ssenh-review-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--eh-g),#1a6fe0);color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ssenh-review-name{font-size:13px;font-weight:600;color:#f0f6fc;}
.ssenh-review-name span{font-size:14px;}
.ssenh-review-service{font-size:10px;color:var(--eh-muted);margin-top:2px;}
.ssenh-review-stars{margin-left:auto;color:#f59e0b;font-size:12px;flex-shrink:0;}
.ssenh-review-text{font-size:12px;color:var(--eh-muted);line-height:1.75;font-style:italic;}

/* ══════════════════════════════════════════
   ⑥ CONTACT FORM
══════════════════════════════════════════ */
.ssenh-contact-wrap{padding:2rem 0;}
.ssenh-contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start;}
.ssenh-contact-tag{font-size:9px;letter-spacing:.25em;color:var(--eh-b);font-family:var(--eh-mono);margin-bottom:.5rem;}
.ssenh-contact-title{font-size:clamp(1.4rem,3vw,2rem);font-weight:700;color:#f0f6fc;margin-bottom:.5rem;letter-spacing:-.02em;}
.ssenh-contact-sub{font-size:13px;color:var(--eh-muted);line-height:1.85;margin-bottom:2rem;}
.ssenh-contact-methods{display:flex;flex-direction:column;gap:10px;margin-bottom:1.5rem;}
.ssenh-cmethod{display:flex;align-items:center;gap:14px;padding:1rem 1.25rem;background:var(--eh-bg3);border:0.5px solid var(--eh-bdr);border-radius:8px;text-decoration:none;transition:border-color .2s;}
.ssenh-cmethod:hover{border-color:var(--eh-bdr2);}
.ssenh-cmethod-ico{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.ssenh-cmethod-title{font-size:13px;font-weight:600;color:#f0f6fc;}
.ssenh-cmethod-sub{font-size:11px;color:var(--eh-muted);}
.ssenh-contact-hours{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--eh-muted);}
.ssenh-hours-dot{width:8px;height:8px;border-radius:50%;background:#25d366;animation:livepulse 2s infinite;flex-shrink:0;}
.ssenh-contact-form-wrap{background:var(--eh-bg3);border:0.5px solid var(--eh-bdr);border-radius:12px;padding:2rem;}
.ssenh-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.ssenh-form-group{margin-bottom:1rem;}
.ssenh-form-group label{display:block;font-size:10px;font-weight:600;color:var(--eh-muted);margin-bottom:.4rem;letter-spacing:.08em;}
.ssenh-req{color:var(--eh-g);}
.ssenh-form-group input,
.ssenh-form-group select,
.ssenh-form-group textarea{
  width:100%;background:var(--eh-bg2);border:0.5px solid var(--eh-bdr);
  color:var(--eh-text);border-radius:7px;padding:10px 14px;
  font-size:13px;outline:none;transition:border-color .2s;
  font-family:var(--eh-font);
}
.ssenh-form-group input:focus,
.ssenh-form-group select:focus,
.ssenh-form-group textarea:focus{border-color:var(--eh-bdr2);}
.ssenh-form-group textarea{min-height:100px;resize:vertical;}
.ssenh-form-group select option{background:var(--eh-bg2);}
.ssenh-form-status{padding:.75rem 1rem;border-radius:7px;font-size:13px;margin-bottom:1rem;}
.ssenh-form-status.success{background:rgba(37,211,102,.08);border:0.5px solid rgba(37,211,102,.25);color:#25d366;}
.ssenh-form-status.error{background:rgba(239,68,68,.08);border:0.5px solid rgba(239,68,68,.2);color:#ef4444;}
.ssenh-form-submit{
  width:100%;font-size:13px;font-weight:700;padding:12px;
  background:linear-gradient(135deg,var(--eh-g),#1a6fe0);
  color:#fff;border:none;border-radius:7px;cursor:pointer;
  font-family:var(--eh-font);letter-spacing:.04em;transition:opacity .2s;
}
.ssenh-form-submit:hover{opacity:.88;}
.ssenh-form-submit:disabled{opacity:.5;cursor:not-allowed;}
.ssenh-form-note{font-size:11px;color:var(--eh-muted);text-align:center;margin-top:.75rem;}
@media(max-width:900px){.ssenh-contact-grid{grid-template-columns:1fr;gap:2rem;}.ssenh-form-grid{grid-template-columns:1fr;}}

/* ══════════════════════════════════════════
   ⑦ SPY CAMERA GALLERY
══════════════════════════════════════════ */
.ssenh-gallery-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:2rem;}
.ssenh-gfilter{
  font-size:11px;font-weight:600;padding:6px 16px;border-radius:20px;
  background:var(--eh-bg3);border:0.5px solid var(--eh-bdr);
  color:var(--eh-muted);cursor:pointer;transition:all .2s;
  font-family:var(--eh-font);
}
.ssenh-gfilter:hover{border-color:var(--eh-bdr2);color:var(--eh-text);}
.ssenh-gfilter.active{background:var(--eh-g);border-color:var(--eh-g);color:#fff;}

.ssenh-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;}
.ssenh-gallery-card{background:var(--eh-bg2);border:0.5px solid var(--eh-bdr);border-radius:10px;overflow:hidden;transition:all .25s;}
.ssenh-gallery-card:hover{border-color:var(--eh-bdr2);transform:translateY(-3px);box-shadow:0 8px 24px rgba(61,142,255,.08);}
.ssenh-gallery-card.hidden{display:none;}

.ssenh-gallery-visual{
  position:relative;height:160px;background:#000;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.ssenh-gallery-scan{
  position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,rgba(61,142,255,.025) 0px,transparent 1px,transparent 3px,rgba(61,142,255,.025) 4px);
  pointer-events:none;
}
.ssenh-gallery-ico{font-size:3.5rem;animation:float 3s ease-in-out infinite;position:relative;z-index:2;}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
.ssenh-gallery-rec{
  position:absolute;bottom:8px;left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:5px;
  font-size:9px;letter-spacing:.15em;color:var(--eh-g);
  font-family:var(--eh-mono);z-index:3;background:rgba(0,0,0,.5);
  padding:3px 10px;border-radius:2px;
}
.ssenh-rec-dot{width:6px;height:6px;border-radius:50%;background:#ef4444;animation:blink .8s infinite;flex-shrink:0;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0;}}

.ssenh-gallery-body{padding:.9rem 1rem 1rem;}
.ssenh-gallery-name{font-size:13px;font-weight:600;color:#f0f6fc;margin-bottom:.4rem;}
.ssenh-gallery-desc{font-size:11px;color:var(--eh-muted);line-height:1.65;margin-bottom:.6rem;}
.ssenh-gallery-specs{font-size:9px;font-family:var(--eh-mono);color:var(--eh-g);letter-spacing:.05em;padding:3px 8px;background:rgba(61,142,255,.06);border-radius:4px;display:inline-block;}

.ssenh-gallery-cta{
  display:inline-flex;align-items:center;gap:8px;
  background:#25d366;color:#fff!important;
  font-size:13px;font-weight:600;padding:12px 28px;border-radius:4px;
  text-decoration:none;transition:opacity .2s;
}
.ssenh-gallery-cta:hover{opacity:.88;}

/* ══════════════════════════════════════════
   ⑧ HERO SEARCH
══════════════════════════════════════════ */
.ssenh-search-wrap{position:relative;max-width:580px;}
.ssenh-search-box{display:flex;align-items:center;background:var(--eh-bg2);border:1px solid var(--eh-bdr2);border-radius:8px;padding:0 14px;transition:border-color .2s;gap:8px;}
.ssenh-search-box:focus-within{border-color:var(--eh-g);box-shadow:0 0 0 3px rgba(61,142,255,.1);}
.ssenh-search-ico{font-size:16px;flex-shrink:0;}
.ssenh-search-input{flex:1;background:none;border:none;outline:none;color:var(--eh-text);font-size:14px;padding:13px 0;font-family:var(--eh-font);}
.ssenh-search-input::placeholder{color:var(--eh-muted);}
.ssenh-search-clear{background:none;border:none;color:var(--eh-muted);cursor:pointer;font-size:16px;padding:0;transition:color .2s;}
.ssenh-search-clear:hover{color:var(--eh-text);}
.ssenh-search-results{
  position:absolute;top:calc(100% + 6px);left:0;right:0;
  background:var(--eh-bg2);border:1px solid var(--eh-bdr2);
  border-radius:8px;overflow:hidden;z-index:500;
  box-shadow:0 8px 32px rgba(0,0,0,.3);max-height:320px;overflow-y:auto;
}
.ssenh-search-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.1rem;border-bottom:0.5px solid var(--eh-bdr);text-decoration:none;transition:background .15s;gap:1rem;}
.ssenh-search-item:last-child{border:none;}
.ssenh-search-item:hover{background:var(--eh-bg3);}
.ssenh-search-item.hidden{display:none;}
.ssenh-search-item-name{font-size:13px;font-weight:600;color:#f0f6fc;}
.ssenh-search-item-sub{font-size:11px;color:var(--eh-muted);text-align:right;}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media(max-width:700px){
  .ssenh-sticky-services{display:none;}
  .ssenh-sticky-inner{padding:.5rem 1rem;}
  .ssenh-gallery-grid{grid-template-columns:1fr 1fr;}
  .ssenh-reviews-track{animation-duration:28s;}
}
@media(max-width:480px){
  .ssenh-gallery-grid{grid-template-columns:1fr;}
}

/* Hero search spacing */
.hero .ssenh-search-wrap { margin-bottom: 2rem; }
/* Testimonials section background fix */
.ssenh-reviews-wrap { margin: 0 -2rem; padding: 0 2rem; }

/* ── HERO SEARCH BAR ── */
.hero-search-wrap{position:relative;max-width:600px;margin-bottom:2.5rem;}
.hero-search-box{
  display:flex;align-items:center;gap:10px;
  background:rgba(10,20,40,0.85);
  border:1px solid rgba(61,142,255,0.4);
  border-radius:8px;padding:0 16px;
  backdrop-filter:blur(12px);
  transition:border-color .2s, box-shadow .2s;
}
.hero-search-box:focus-within{
  border-color:var(--g);
  box-shadow:0 0 0 3px rgba(61,142,255,0.15), 0 4px 24px rgba(61,142,255,0.12);
}
.hero-search-ico{color:var(--g);flex-shrink:0;}
.hero-search-input{
  flex:1;background:none;border:none;outline:none;
  color:var(--text);font-size:14px;padding:15px 0;
  font-family:var(--font);
}
.hero-search-input::placeholder{color:var(--muted);}
.hero-search-clear{
  background:none;border:none;color:var(--muted);
  cursor:pointer;font-size:18px;padding:0;line-height:1;
  transition:color .2s;flex-shrink:0;
}
.hero-search-clear:hover{color:var(--text);}
.hero-search-results{
  position:absolute;top:calc(100% + 8px);left:0;right:0;
  background:var(--bg2);
  border:1px solid var(--bdr2);border-radius:8px;
  overflow:hidden;z-index:500;
  box-shadow:0 12px 40px rgba(0,0,0,.4);
  max-height:340px;overflow-y:auto;
}
.hero-search-results::-webkit-scrollbar{width:3px;}
.hero-search-results::-webkit-scrollbar-thumb{background:var(--bdr2);border-radius:2px;}
.hero-sr-item{
  display:flex;justify-content:space-between;align-items:center;
  padding:.8rem 1.2rem;border-bottom:0.5px solid var(--dim);
  text-decoration:none;transition:background .15s;gap:1rem;
}
.hero-sr-item:last-child{border:none;}
.hero-sr-item:hover{background:var(--bg3);}
.hero-sr-item.hidden{display:none;}
.hero-sr-name{font-size:13px;font-weight:600;color:#f0f6fc;}
.hero-sr-sub{font-size:11px;color:var(--muted);text-align:right;flex-shrink:0;}

/* ── HERO SEARCH VISIBILITY FIXES ── */
.hero-search-wrap { z-index: 10; position: relative; }
.hero-search-box {
  background: rgba(6,13,26,0.92) !important;
  border: 1.5px solid rgba(61,142,255,0.5) !important;
  box-shadow: 0 0 0 1px rgba(61,142,255,0.08), 0 4px 24px rgba(0,0,0,0.4) !important;
}
.hero-search-input { font-size: 14px !important; color: #f0f6fc !important; }
.hero-search-results { z-index: 9999 !important; }

/* ── LOGO BACKGROUND FIX ── */
.custom-logo { mix-blend-mode: screen !important; }
.custom-logo-link img, .site-logo img, .custom-logo { background: transparent !important; }
.logo-img { mix-blend-mode: normal !important; background: transparent !important; }

/* ── HERO SEARCH ── */
.hero-search-wrap{position:relative;max-width:580px;margin:0 0 2.5rem;z-index:10;}
.hero-search-box{display:flex;align-items:center;gap:10px;background:rgba(4,8,15,0.9);border:1.5px solid rgba(61,142,255,0.4);border-radius:8px;padding:0 16px;box-shadow:0 0 0 1px rgba(61,142,255,0.06),0 4px 24px rgba(0,0,0,0.35);backdrop-filter:blur(12px);transition:border-color .2s,box-shadow .2s;}
.hero-search-box:focus-within{border-color:var(--g);box-shadow:0 0 0 3px rgba(61,142,255,0.12),0 4px 24px rgba(0,0,0,0.35);}
.hero-search-input{flex:1;background:none;border:none;outline:none;color:#f0f6fc;font-size:14px;padding:14px 0;font-family:var(--font);}
.hero-search-input::placeholder{color:var(--muted);}
.hero-search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg2);border:1px solid var(--bdr2);border-radius:8px;z-index:9999;box-shadow:0 12px 40px rgba(0,0,0,.5);max-height:340px;overflow-y:auto;}
.hero-search-results::-webkit-scrollbar{width:3px;}
.hero-search-results::-webkit-scrollbar-thumb{background:rgba(61,142,255,.3);border-radius:2px;}
.hero-sr-item{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1.2rem;border-bottom:0.5px solid var(--dim);text-decoration:none;transition:background .15s;gap:1rem;}
.hero-sr-item:last-child{border:none;}
.hero-sr-item:hover{background:var(--bg3);}
.hero-sr-item.hidden{display:none;}
.hero-sr-name{font-size:13px;font-weight:600;color:#f0f6fc;}
.hero-sr-sub{font-size:11px;color:var(--muted);text-align:right;flex-shrink:0;}

/* ── CART HOVER PANEL ── */
.cart-icon-wrap{position:relative;}
.cart-hover-panel{position:absolute;top:calc(100% + 10px);right:0;width:340px;background:var(--bg2);border:1px solid var(--bdr2);border-radius:12px;box-shadow:0 16px 48px rgba(0,0,0,.5);z-index:600;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s,transform .2s;overflow:hidden;}
.cart-icon-wrap:hover .cart-hover-panel,.cart-hover-panel:hover{opacity:1;pointer-events:all;transform:translateY(0);}
.cart-panel-header{padding:.9rem 1.2rem;border-bottom:0.5px solid var(--dim);font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.08em;font-family:var(--mono);display:flex;justify-content:space-between;align-items:center;}
.cart-panel-header span:last-child{color:var(--g);}
.cart-panel-items{max-height:280px;overflow-y:auto;padding:.5rem 0;}
.cart-panel-items::-webkit-scrollbar{width:3px;}
.cart-panel-items::-webkit-scrollbar-thumb{background:rgba(61,142,255,.25);border-radius:2px;}
.cart-panel-item{display:flex;align-items:center;gap:10px;padding:.65rem 1.2rem;transition:background .15s;}
.cart-panel-item:hover{background:var(--bg3);}
.cart-panel-img{width:44px;height:44px;object-fit:contain;border-radius:6px;background:var(--bg3);flex-shrink:0;padding:4px;}
.cart-panel-info{flex:1;min-width:0;}
.cart-panel-name{font-size:12px;font-weight:600;color:#f0f6fc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cart-panel-qty{font-size:10px;color:var(--muted);}
.cart-panel-price{font-size:13px;font-weight:700;color:var(--g);font-family:var(--mono);flex-shrink:0;}
.cart-panel-empty{text-align:center;padding:2rem 1rem;font-size:13px;color:var(--muted);}
.cart-panel-empty span{font-size:2rem;display:block;margin-bottom:.5rem;opacity:.3;}
.cart-panel-footer{border-top:0.5px solid var(--dim);padding:.9rem 1.2rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;}
.cart-panel-total{font-size:13px;color:var(--muted);}
.cart-panel-total strong{color:var(--g);font-family:var(--mono);font-size:16px;}
.cart-panel-btns{display:flex;gap:7px;}
.cart-panel-btn{font-size:11px;font-weight:600;padding:8px 14px;border-radius:6px;text-decoration:none;transition:all .2s;white-space:nowrap;}
.cart-panel-btn-view{background:var(--bg3);color:var(--text)!important;border:0.5px solid var(--bdr);}
.cart-panel-btn-view:hover{border-color:var(--g);color:var(--g)!important;}
.cart-panel-btn-checkout{background:linear-gradient(135deg,var(--g),var(--g2));color:#fff!important;}
.cart-panel-btn-checkout:hover{opacity:.88;}

/* ── LOGO FIX ── */
.custom-logo-link img.custom-logo { mix-blend-mode: lighten !important; }
.logo-img, .site-logo img { background: transparent !important; }

/* Search — no results */
.hero-sr-empty{padding:1.25rem 1.2rem;font-size:13px;color:var(--muted);text-align:center;}
.hero-sr-empty span{display:block;font-size:1.5rem;margin-bottom:.35rem;opacity:.4;}

/* ── SHOP 4 COLUMNS ── */
.woocommerce ul.products,
.woocommerce-page ul.products {
  grid-template-columns: repeat(4,1fr) !important;
}
@media(max-width:1100px){
  .woocommerce ul.products,
  .woocommerce-page ul.products { grid-template-columns: repeat(3,1fr) !important; }
}
@media(max-width:700px){
  .woocommerce ul.products,
  .woocommerce-page ul.products { grid-template-columns: repeat(2,1fr) !important; }
}

/* ── HEADER NAV — handle long translated text ── */
.header-inner { gap: .5rem !important; }

/* Nav shrinks to fit translated text */
.primary-nav {
  gap: 0 !important;
  flex: 1 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  justify-content: center !important;
}
.primary-nav > a,
.nav-item > a {
  font-size: 11.5px !important;
  padding: 6px 7px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 110px !important;
  display: block !important;
}
/* Let logo and actions not shrink */
.site-logo { flex-shrink: 0 !important; }
.header-actions { flex-shrink: 0 !important; }

/* Hide less important nav items when space is tight */
@media(max-width:1200px) {
  .primary-nav > a:nth-child(n+8),
  .nav-item:nth-child(n+8) { display: none !important; }
}
@media(max-width:1050px) {
  .primary-nav > a:nth-child(n+6),
  .nav-item:nth-child(n+6) { display: none !important; }
}
@media(max-width:900px) {
  .primary-nav { display: none !important; }
  .primary-nav.open { display: flex !important; }
  .menu-toggle { display: block !important; }
}
}

/* Cart button — shorter when space is tight */
.cart-icon-wrap a {
  padding: 6px 10px !important;
  font-size: 11px !important;
}
/* Lang switcher — compact */
.lang-current {
  padding: 6px 9px !important;
  font-size: 11px !important;
}
/* WA button — hide text on smaller screens */
@media(max-width:1150px) {
  .btn-wa-header span { display: none !important; }
  .btn-wa-header { padding: 7px 10px !important; }
}

/* Mobile menu — show ALL items when open regardless of nth-child hiding */
.primary-nav.open > a,
.primary-nav.open > .nav-item {
  display: flex !important;
  max-width: none !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
}

/* ── NAV BOLDER + WA SMALLER ── */
.primary-nav > a,
.nav-item > a { font-weight: 600 !important; }

.btn-wa-header {
  font-size: 11px !important;
  padding: 6px 11px !important;
}
.btn-wa-header svg { width: 12px !important; height: 12px !important; }

/* ── HEADER — restore bigger size ── */
.header-inner { height: 68px !important; gap: 1rem !important; }
.primary-nav > a,
.nav-item > a {
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 7px 11px !important;
  max-width: none !important;
  text-overflow: clip !important;
  overflow: visible !important;
}

/* ── WA HEADER BUTTON — restore normal size ── */
.btn-wa-header {
  font-size: 12px !important;
  padding: 7px 14px !important;
}
.btn-wa-header svg { width: 14px !important; height: 14px !important; }

/* ── WHEN TEXT IS LONG (translated) — shrink font only ── */
/* Weglot adds lang attribute to <html> */
:lang(fr) .primary-nav > a,
:lang(fr) .nav-item > a,
:lang(ro) .primary-nav > a,
:lang(ro) .nav-item > a,
:lang(it) .primary-nav > a,
:lang(it) .nav-item > a,
:lang(ar) .primary-nav > a,
:lang(ar) .nav-item > a,
:lang(zh) .primary-nav > a,
:lang(zh) .nav-item > a {
  font-size: 11px !important;
  padding: 6px 7px !important;
}

/* ── BOTTOM WA BUBBLE — compact ── */
.wa-sticky, .wa-bubble {
  font-size: 11px !important;
  padding: 9px 14px 9px 12px !important;
  gap: 6px !important;
  border-radius: 6px !important;
}
.wa-sticky svg, .wa-bubble svg { width: 15px !important; height: 15px !important; }

/* ── WA BUBBLE — circle, tooltip on hover ── */
.wa-bubble {
  width: 52px !important;
  height: 52px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  justify-content: center !important;
  gap: 0 !important;
  bottom: 1.5rem !important;
  right: 1.5rem !important;
  font-size: 0 !important; /* hide text by default */
  clip-path: none !important;
  box-shadow: 0 4px 18px rgba(37,211,102,.4) !important;
  transition: transform .25s, box-shadow .25s, bottom .25s !important;
}
.wa-bubble svg {
  width: 26px !important;
  height: 26px !important;
  flex-shrink: 0 !important;
}
/* Tooltip */
.wa-bubble::after {
  content: 'Chat with us';
  position: absolute;
  bottom: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  background: rgba(10,20,35,0.95);
  color: #fff;
  font-size: 12px !important;
  font-weight: 600;
  white-space: nowrap;
  padding: 6px 12px;
  border-radius: 6px;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s, transform .2s;
  border: 1px solid rgba(37,211,102,.25);
}
/* Arrow under tooltip */
.wa-bubble::before {
  content: '';
  position: absolute;
  bottom: calc(100% + 4px);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  border: 5px solid transparent;
  border-top-color: rgba(10,20,35,0.95);
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s, transform .2s;
}
.wa-bubble:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 8px 28px rgba(37,211,102,.5) !important;
}
.wa-bubble:hover::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.wa-bubble:hover::before {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* ── HAMBURGER FIX ── */
.site-header { position: relative !important; }
@media(max-width:900px) {
  .primary-nav {
    display: none !important;
    flex-direction: column !important;
    position: absolute !important;
    top: 64px !important;
    left: 0 !important;
    right: 0 !important;
    background: rgba(4,8,15,.98) !important;
    border-bottom: 1px solid var(--bdr2) !important;
    padding: 1rem 1.5rem 1.5rem !important;
    z-index: 9000 !important;
    gap: .5rem !important;
    backdrop-filter: blur(20px) !important;
  }
  .primary-nav.open {
    display: flex !important;
  }
  .primary-nav > a,
  .nav-item > a {
    font-size: 14px !important;
    padding: 10px 0 !important;
    max-width: none !important;
    border: none !important;
    border-bottom: 0.5px solid var(--dim) !important;
    border-radius: 0 !important;
    width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }
  .menu-toggle { display: flex !important; }
}

/* ══════════════════════════════════════
   SALE ANNOUNCEMENT BAR
══════════════════════════════════════ */
.ssoft-sale-bar {
  background: linear-gradient(90deg, #ef4444, #dc2626, #b91c1c);
  padding: 0;
  position: relative;
  z-index:600;
  overflow: hidden;
}
.ssoft-sale-bar::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    90deg,
    transparent,
    transparent 20px,
    rgba(255,255,255,.04) 20px,
    rgba(255,255,255,.04) 40px
  );
}
.sale-bar-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: .55rem 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
.sale-bar-fire { font-size: 16px; animation: salefire .6s ease-in-out infinite alternate; }
@keyframes salefire { from{transform:scale(1);}to{transform:scale(1.2);} }
.sale-bar-text { font-size: 13px; font-weight: 600; color: #fff; letter-spacing: .02em; }
.sale-bar-text strong { font-weight: 800; letter-spacing: .06em; }
.sale-bar-countdown { font-size: 12px; color: rgba(255,255,255,.85); }
.sale-bar-countdown strong { font-weight: 700; color: #fde68a; font-family: var(--mono,'monospace'); }
.sale-bar-btn {
  background: #fff;
  color: #b91c1c !important;
  font-size: 11px;
  font-weight: 800;
  padding: 5px 16px;
  border-radius: 20px;
  text-decoration: none;
  letter-spacing: .06em;
  transition: all .2s;
  white-space: nowrap;
}
.sale-bar-btn:hover { background: #fde68a; color: #b91c1c !important; }
.sale-bar-close {
  background: none;
  border: none;
  color: rgba(255,255,255,.6);
  cursor: pointer;
  font-size: 14px;
  padding: 2px 6px;
  margin-left: .5rem;
  transition: color .2s;
  position: absolute;
  right: 1.5rem;
}
.sale-bar-close:hover { color: #fff; }
@media(max-width:700px) {
  .sale-bar-inner { padding: .5rem 1rem; gap: .5rem; justify-content: flex-start; }
  .sale-bar-close { position: static; margin-left: auto; }
  .sale-bar-countdown { display: none; }
  .sale-bar-text { font-size: 12px; }
}

/* ══════════════════════════════════════
   SPY CAMERA SALE BADGES
══════════════════════════════════════ */
/* In product carousel (front-page) */
.product-slide-inner { position: relative; }
.slide-sale-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 10;
  background: linear-gradient(135deg, #ef4444, #dc2626);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 4px;
  letter-spacing: .04em;
  box-shadow: 0 2px 8px rgba(239,68,68,.4);
  animation: salebadge 2s ease-in-out infinite;
}
@keyframes salebadge {
  0%,100% { transform: scale(1); box-shadow: 0 2px 8px rgba(239,68,68,.4); }
  50%      { transform: scale(1.05); box-shadow: 0 4px 16px rgba(239,68,68,.6); }
}
/* In WooCommerce shop/archive loops */
.ssoft-spy-sale-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 10;
  background: linear-gradient(135deg, #ef4444, #dc2626);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 4px;
  letter-spacing: .04em;
  box-shadow: 0 2px 8px rgba(239,68,68,.4);
  animation: salebadge 2s ease-in-out infinite;
}

/* ── SALE BAR POSITION FIX ── */
.ssoft-sale-bar {
  position: relative;
  z-index: 9999;
  isolation: isolate;
}
/* Header must stick below sale bar — JS adjusts top dynamically */
.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 500 !important;
}
/* No overflow bleed from sale bar */
body > .ssoft-sale-bar + * {
  position: relative;
}

/* ── SPY SALE BADGE FIX — small, top-left corner ── */
.ssoft-spy-sale-badge {
  position: absolute !important;
  top: 8px !important;
  left: 8px !important;
  z-index: 10 !important;
  background: linear-gradient(135deg,#ef4444,#dc2626) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  padding: 3px 9px !important;
  border-radius: 4px !important;
  letter-spacing: .04em !important;
  box-shadow: 0 2px 8px rgba(239,68,68,.35) !important;
  width: auto !important;
  height: auto !important;
  display: inline-block !important;
  line-height: 1.4 !important;
  animation: salebadge 2s ease-in-out infinite !important;
  pointer-events: none !important;
}
/* ensure product card has relative positioning for badge */
.woocommerce ul.products li.product {
  position: relative !important;
}

/* ── SALE BADGE FINAL FIX — tiny pill, no overlap ── */
.ssoft-spy-sale-badge {
  position: absolute !important;
  top: 8px !important; left: 8px !important;
  z-index: 20 !important;
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  padding: 2px 7px !important;
  border-radius: 3px !important;
  line-height: 1.4 !important;
  width: auto !important;
  height: auto !important;
  max-width: 80px !important;
  display: inline-block !important;
  pointer-events: none !important;
  letter-spacing: .04em !important;
  box-shadow: none !important;
  animation: none !important;
}
/* Slide badge in carousel — also small */
.slide-sale-badge {
  position: absolute !important;
  top: 8px !important; left: 8px !important;
  z-index: 20 !important;
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  padding: 2px 7px !important;
  border-radius: 3px !important;
  width: auto !important; height: auto !important;
  max-width: 80px !important;
  display: inline-block !important;
  pointer-events: none !important;
  animation: none !important;
}
/* Sale bar flame — keep small */
.sale-bar-fire { font-size: 14px !important; }

/* ── SALE BADGE — small square bottom-left ── */
.ssoft-spy-sale-badge,
.slide-sale-badge {
  position: absolute !important;
  bottom: 8px !important;
  left: 8px !important;
  top: auto !important;
  right: auto !important;
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  padding: 4px 7px !important;
  border-radius: 3px !important;
  width: auto !important;
  height: auto !important;
  max-width: 70px !important;
  line-height: 1.3 !important;
  display: inline-block !important;
  pointer-events: none !important;
  letter-spacing: .04em !important;
  animation: none !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.3) !important;
  z-index: 20 !important;
}

/* ── SPY CAMERA SALE BADGE — uses WC .onsale positioning ── */
.ssoft-spy-sale-badge.onsale,
span.onsale.ssoft-spy-sale-badge {
  /* WooCommerce positions .onsale absolutely inside the image — we just restyle it */
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  padding: 4px 8px !important;
  border-radius: 3px !important;
  min-height: auto !important;
  min-width: auto !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.4 !important;
  letter-spacing: .04em !important;
  /* Override WC default which puts it top-left — move to bottom-left */
  top: auto !important;
  right: auto !important;
  bottom: 8px !important;
  left: 8px !important;
  border-radius: 3px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.25) !important;
  font-family: var(--font, sans-serif) !important;
  animation: none !important;
}
/* Also style WooCommerce's default onsale for spy cameras on all product images */
.woocommerce ul.products li.product .ssoft-spy-sale-badge {
  position: absolute !important;
  bottom: 8px !important;
  left: 8px !important;
  top: auto !important;
  right: auto !important;
}

/* ── -50% STICKER — circular, small, bold ── */
.ssoft-spy-sale-badge.onsale,
span.onsale.ssoft-spy-sale-badge {
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 !important;
  letter-spacing: -.5px !important;
  bottom: 8px !important;
  left: 8px !important;
  top: auto !important;
  right: auto !important;
  box-shadow: 0 2px 6px rgba(239,68,68,.4) !important;
  animation: none !important;
  font-family: var(--font,sans-serif) !important;
}

/* ── -50% STICKER — top-left, circle, no flame ── */
.ssoft-spy-sale-badge.onsale,
span.onsale.ssoft-spy-sale-badge,
.slide-sale-badge {
  background: #ef4444 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 !important;
  letter-spacing: -.5px !important;
  top: 8px !important;
  left: 8px !important;
  bottom: auto !important;
  right: auto !important;
  position: absolute !important;
  box-shadow: 0 2px 8px rgba(239,68,68,.4) !important;
  animation: none !important;
  z-index: 20 !important;
  font-family: var(--font,sans-serif) !important;
}

/* Sale bar tag instead of flame */
.sale-bar-tag {
  background: #fff;
  color: #b91c1c;
  font-size: 9px;
  font-weight: 900;
  padding: 2px 8px;
  border-radius: 3px;
  letter-spacing: .1em;
}

/* ── Timer — no flash, monospace fixed width ── */
#sale-timer { font-family: var(--mono,'IBM Plex Mono',monospace); letter-spacing:.05em; }
#sale-timer span { display: inline-block; min-width: 1ch; text-align: center; }
