/* Exploit Menu — monochrome animated theme layer */
:root{
  --em-bg:#050505;
  --em-bg-2:#090909;
  --em-panel:#0d0d0e;
  --em-panel-2:#121214;
  --em-line:rgba(255,255,255,.09);
  --em-line-strong:rgba(255,255,255,.17);
  --em-text:#f5f5f5;
  --em-muted:#8d8d94;
}

html,body{background:var(--em-bg)!important;}
body{
  color:var(--em-text);
  background:
    radial-gradient(900px 540px at 50% -180px,rgba(255,255,255,.08),transparent 65%),
    radial-gradient(650px 420px at 12% 32%,rgba(255,255,255,.025),transparent 70%),
    #050505!important;
  overflow-x:hidden;
}

/* animated logo field */
.em-logo-field{
  position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.88),rgba(0,0,0,.3) 68%,transparent 100%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.88),rgba(0,0,0,.3) 68%,transparent 100%);
}
.em-float-logo{
  position:absolute;display:grid;place-items:center;
  width:var(--size);height:var(--size);left:var(--left);top:var(--top);
  opacity:var(--opacity);filter:grayscale(1) contrast(.8) brightness(1.45);
  transform:rotate(var(--rot));
  animation:emFloat var(--dur) ease-in-out var(--delay) infinite alternate;
  will-change:transform;
}
.em-float-logo img{width:100%;height:100%;object-fit:contain;opacity:.75;}
.em-float-logo span{
  width:100%;height:100%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);
  border-radius:24%;font-weight:950;letter-spacing:-.08em;color:#fff;background:rgba(255,255,255,.025);
  font-size:calc(var(--size)*.28);box-shadow:inset 0 0 30px rgba(255,255,255,.025);
}
@keyframes emFloat{
  0%{transform:translate3d(-10px,18px,0) rotate(var(--rot)) scale(.96)}
  55%{transform:translate3d(18px,-28px,0) rotate(calc(var(--rot) + 8deg)) scale(1.04)}
  100%{transform:translate3d(-6px,-55px,0) rotate(calc(var(--rot) - 5deg)) scale(1)}
}

/* keep actual content above background */
body>header,body>main,body>footer,.sa-navbar,.sa-footer,[class*="sa-"]{position:relative;z-index:1;}

/* premium monochrome nav */
.sa-navbar{
  background:rgba(5,5,5,.72)!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  backdrop-filter:blur(22px) saturate(120%);
  -webkit-backdrop-filter:blur(22px) saturate(120%);
}
.sa-navbar::after{
  content:"";position:absolute;left:8%;right:8%;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
}
.sa-navbar-link{font-weight:650!important;color:#aaaab0!important;transition:.2s ease!important;}
.sa-navbar-link:hover{color:#fff!important;}
.sa-navbar-logo{filter:grayscale(1);}

/* hero */
.sa-hero{min-height:700px!important;display:flex;align-items:center;isolation:isolate;}
.sa-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(to bottom,rgba(5,5,5,.08),rgba(5,5,5,.42) 76%,#050505 100%),
    radial-gradient(560px 320px at 50% 28%,rgba(255,255,255,.065),transparent 72%);
}
.sa-hero .wrap{width:100%;}
.sa-hero-eyebrow{
  color:#d2d2d5!important;background:rgba(255,255,255,.035)!important;
  border:1px solid rgba(255,255,255,.12)!important;text-transform:uppercase;
  letter-spacing:.2em;font-size:.68rem!important;box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.sa-hero-title{
  max-width:980px!important;font-size:clamp(3.6rem,7.8vw,7.2rem)!important;
  line-height:.91!important;letter-spacing:-.065em!important;font-weight:850!important;
  text-shadow:0 18px 65px rgba(0,0,0,.58);
}
.sa-hero-title strong,.sa-hero-title b{color:#fff!important;}
.sa-hero-subtitle{max-width:700px!important;color:#96969d!important;line-height:1.7!important;font-size:1.05rem!important;}
.sa-hero-actions .sa-btn{min-height:50px!important;padding-inline:1.35rem!important;border-radius:12px!important;}
.hero-bg-glow{filter:grayscale(1)!important;opacity:.16!important;}
.hero-bg-grid{opacity:.09!important;filter:grayscale(1)!important;}

/* buttons */
.sa-btn--primary,.sa-add-to-cart,[class*="primary"] .sa-btn{
  background:#f1f1f1!important;color:#080808!important;border-color:#f1f1f1!important;
  box-shadow:0 14px 42px rgba(255,255,255,.10)!important;transition:.2s ease!important;
}
.sa-btn--primary:hover,.sa-add-to-cart:hover{
  background:#fff!important;transform:translateY(-2px);box-shadow:0 18px 50px rgba(255,255,255,.16)!important;
}
.sa-btn:not(.sa-btn--primary){border-color:rgba(255,255,255,.12)!important;}

/* section typography */
.sa-section-eyebrow,.sa-section-header [class*="eyebrow"]{
  color:#8f8f96!important;letter-spacing:.2em;text-transform:uppercase;font-size:.68rem;font-weight:850;
}
.sa-section-title{letter-spacing:-.045em!important;font-weight:800!important;}

/* cards */
.sa-product-card,.sa-feature,.sa-features .sa-features-item,.sa-stats .sa-stats-item,.sa-feedback-card,.sa-faq-item,.sa-faq details{
  background:linear-gradient(180deg,rgba(15,15,16,.93),rgba(8,8,9,.96))!important;
  border:1px solid var(--em-line)!important;
  box-shadow:0 16px 55px rgba(0,0,0,.22)!important;
}
.sa-product-card{
  position:relative;overflow:hidden;border-radius:18px!important;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important;
}
.sa-product-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(145deg,rgba(255,255,255,.055),transparent 35%,transparent 70%,rgba(255,255,255,.018));
}
.sa-product-card::after{
  content:"";position:absolute;left:12%;right:12%;top:-1px;height:1px;z-index:2;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);opacity:.5;
}
.sa-product-card:hover{
  transform:translateY(-7px)!important;border-color:var(--em-line-strong)!important;
  box-shadow:0 30px 75px rgba(0,0,0,.42)!important;
}
.sa-product-card img{filter:saturate(.15) contrast(1.03);transition:transform .45s ease,filter .45s ease!important;}
.sa-product-card:hover img{transform:scale(1.045);filter:saturate(.3) contrast(1.07);}
.sa-product-card-title{font-weight:780!important;letter-spacing:-.025em!important;}
.sa-product-card-price{color:#f2f2f2!important;font-weight:850!important;}

/* input / modals / cart */
input,textarea,select,[role="dialog"],.sa-cart-panel{
  border-color:rgba(255,255,255,.10)!important;
}
input,textarea,select{background:#0d0d0f!important;}

.sa-footer{
  background:rgba(5,5,5,.88)!important;border-top:1px solid rgba(255,255,255,.07)!important;
  backdrop-filter:blur(14px);
}

/* subtle page scanline / spotlight */
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.18;
  background:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,rgba(255,255,255,.007) 4px);
}
body::after{
  content:"";position:fixed;width:620px;height:620px;border-radius:50%;z-index:0;pointer-events:none;
  left:var(--em-mx,50%);top:var(--em-my,20%);transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(255,255,255,.045),transparent 62%);transition:left .18s linear,top .18s linear;
}

@media(max-width:767px){
  .sa-hero{min-height:600px!important;}
  .sa-hero-title{font-size:clamp(3rem,15vw,5rem)!important;letter-spacing:-.055em!important;}
  .sa-hero-subtitle{font-size:.98rem!important;}
  .em-float-logo:nth-child(n+10){display:none;}
}

@media(prefers-reduced-motion:reduce){
  .em-float-logo{animation:none!important;}
  .sa-product-card,.sa-product-card img,.sa-btn{transition:none!important;}
  body::after{display:none;}
}
