/* SANSoft products: regular navigation with a self-contained SanServis-style 3D wheel. */
html:has(.products-standard-body){overflow-x:clip;scroll-behavior:auto}
body.products-standard-body{min-height:100svh;overflow-x:hidden;overflow-y:auto;background:#020617}
.products-page{position:relative;z-index:1;min-height:100svh;margin:0}
.products-page .pw-section{position:relative;width:100%;max-width:none;margin:0;padding:90px 0 0;scroll-margin-top:90px;min-height:100svh}
.products-page .pw-heading,.products-page .pw-bottom,.products-page .pw-navigation,.products-page .pw-mobile-hint{display:none}
.products-page .pw-desktop{position:relative;display:block;height:calc(100svh - 90px)}
.products-page .pw-stage{position:relative;top:0;height:100%;min-height:0;max-height:none;width:100%;border:0;border-radius:0;overflow:hidden;touch-action:pan-y;cursor:grab;background:radial-gradient(ellipse at 50% 44%,rgba(12,50,95,.20),transparent 60%)}
.products-page .pw-stage:active{cursor:grabbing}
.products-page .pw-stage:after{display:none}
.products-page .pw-ring-title strong{font-size:clamp(30px,3.8vw,65px)}
.products-page .pw-ring-title span{letter-spacing:.3em}
.products-page .pw-ring-title small{font-size:11px}
.products-page .pw-selected{left:6.5%;width:26%;max-width:310px;top:50%}
.products-page .pw-selected h3{font-size:clamp(33px,4.7vw,67px)}
.products-page .pw-selected-category{font-size:11px;line-height:1.6}
.products-page .pw-selected p{font-size:clamp(12px,.96vw,14px);line-height:1.75}
.products-page .pw-selected-actions{gap:11px}
.products-page .pw-index{right:5%;top:50%;transform:translateY(-50%);max-width:230px;gap:clamp(5px,.95vh,13px)}
.products-page .pw-index button{font-size:clamp(11px,.9vw,14px);padding:7px}
.products-page .pw-stage-help{left:50%;bottom:21px;transform:translateX(-50%);white-space:nowrap;font-size:10px;letter-spacing:.2em}
.products-page .pw-card-face{border-radius:12px;background:#0c1d32}
.products-page .pw-card-name{font-size:clamp(20px,2vw,31px)}
.products-page .pw-card-open{z-index:3;pointer-events:auto}
.pw-laser-field{position:fixed;inset:0;z-index:0;overflow:hidden;opacity:.45}
.pw-laser-line{position:absolute;display:block;width:2px;height:115vh;top:-10vh;transform-origin:center;background:linear-gradient(to bottom,transparent,rgba(56,189,248,.04) 20%,rgba(56,189,248,.6) 48%,rgba(56,189,248,.02) 81%,transparent);filter:drop-shadow(0 0 14px rgba(56,189,248,.5));animation:pw-laser-move 13s ease-in-out infinite alternate;will-change:transform}
.pw-laser-line-a{left:17%;--pw-rot:-31deg;animation-duration:18s}
.pw-laser-line-b{left:66%;--pw-rot:35deg;animation-duration:14s;animation-delay:-5s;background:linear-gradient(to bottom,transparent,rgba(168,85,247,.5) 55%,transparent)}
.pw-laser-line-c{left:86%;--pw-rot:-17deg;animation-duration:20s;animation-delay:-9s;opacity:.6}
@keyframes pw-laser-move{0%{transform:translate(-32vw,-18vh) rotate(var(--pw-rot));opacity:.25}50%{opacity:.7}100%{transform:translate(28vw,14vh) rotate(var(--pw-rot));opacity:.38}}
.pw-product-dialog{position:fixed;inset:0;margin:auto;border:1px solid rgba(125,211,252,.24);border-radius:24px;background:#0a1528;color:#e2e8f0;max-width:min(540px,calc(100vw - 30px));width:100%;max-height:88dvh;overflow-y:auto;padding:0;box-shadow:0 25px 110px #000b}
.pw-product-dialog::backdrop{background:#01030dcc;backdrop-filter:blur(14px)}
.pw-dialog-inner{position:relative;padding:clamp(24px,5vw,42px)}
.pw-dialog-close{position:absolute;right:16px;top:13px;border:1px solid #334155;border-radius:50%;width:37px;height:37px;background:#14253b;color:white;cursor:pointer;font-size:25px}
.pw-dialog-eyebrow{font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:#7dd3fc}
.pw-dialog-inner h2{font-size:clamp(31px,4vw,49px);letter-spacing:-.05em;font-weight:900;margin:14px 0}
.pw-dialog-inner h3{font-size:20px;color:#f8fafc;font-weight:750;line-height:1.3;margin-bottom:16px}
.pw-dialog-inner p{font-size:14px;line-height:1.8;color:#b4c4d8;margin-bottom:17px}
.pw-dialog-inner ul{list-style:disc;padding-left:22px;margin:0 0 18px;color:#dbeafe;font-size:14px;line-height:1.9}
.pw-dialog-audience{color:#91a9c4!important;font-size:12px!important}
.pw-dialog-cta{display:inline-flex;padding:13px 18px;border-radius:12px;background:#0284c7;color:#fff!important;font-size:13px;font-weight:800;text-decoration:none}
@media(max-width:1080px) and (min-width:768px){.products-page .pw-selected{left:3%;width:28%}.products-page .pw-index{right:2.5%;max-width:140px}.products-page .pw-selected h3{font-size:clamp(29px,4vw,44px)}.products-page .pw-selected p{font-size:12px}}
@media(max-width:767px){
  .products-page .pw-section{height:auto;min-height:calc(100svh - 80px);padding:110px 0 75px}
  .products-page .pw-desktop{display:none}
  .products-page .pw-mobile{display:block}
  .products-page .pw-mobile-track{gap:13px;scroll-padding-inline:8vw;padding:9px 8vw 20px;scroll-snap-type:x mandatory}
  .products-page .pw-mobile-card{flex:0 0 84vw;max-width:350px}
  .products-page .pw-mobile-hint{display:block!important}
  .products-page .pw-section>.pw-bottom{display:none}
  .pw-laser-field{opacity:.25}
}
@media(prefers-reduced-motion:reduce){.pw-laser-line{animation:none}.products-page .pw-stage{scroll-behavior:auto}}

/* Product-page navbar fallbacks: prevent the navigation from collapsing into
   plain links if the utility stylesheet is slow or unavailable. */
body.products-standard-body{margin:0}
.products-standard-body nav.nav-blur{
  position:fixed;top:0;left:0;right:0;z-index:90;
  padding:14px clamp(16px,2.25vw,32px);
  background:rgba(2,6,23,.87);
  border-bottom:1px solid rgba(255,255,255,.07);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
}
.products-standard-body nav.nav-blur>div{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;min-height:64px;max-width:1280px;margin:0 auto;
}
.products-standard-body nav.nav-blur>div>a{
  display:inline-flex;align-items:center;gap:12px;flex-shrink:0;
  color:#f8fafc;text-decoration:none;white-space:nowrap;
}
.products-standard-body nav.nav-blur>div>a img{
  display:block;height:48px;width:auto;object-fit:contain;
}
.products-standard-body nav.nav-blur>div>a span{
  font-size:23px;font-weight:900;letter-spacing:-.045em;text-transform:uppercase;
}
.products-standard-body nav.nav-blur>div>a span>span{color:#0ea5e9}
.products-standard-body nav.nav-blur>div>div{
  display:flex;align-items:center;justify-content:center;gap:16px;
}
.products-standard-body nav.nav-blur>div>div>div:last-child{
  display:flex;align-items:center;gap:5px;
  font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;
}
.products-standard-body nav.nav-blur .nav-link,
.products-standard-body nav.nav-blur .nav-cta{text-decoration:none}
.products-standard-body nav.nav-blur>div>button[aria-label="Menyu"]{display:none}
.products-standard-body #mobileMenu{position:fixed;inset:0;z-index:60;background:rgba(2,6,23,.98);backdrop-filter:blur(24px)}
.products-standard-body #mobileMenu.hidden{display:none!important}
.products-standard-body #mobileMenu.flex:not(.hidden){
  display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:24px
}
.products-standard-body #mobileMenu>div:last-child{
  display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;
  font-size:22px;font-weight:900;text-transform:uppercase;
}
.products-standard-body #mobileMenu>div:last-child>a{color:#f8fafc;text-decoration:none}
.products-standard-body #mobileMenu>div:last-child>a:last-child{
  padding:15px 26px;border-radius:14px;background:linear-gradient(120deg,#0ea5e9,#2563eb)
}
@media(max-width:1023px){
  .products-standard-body nav.nav-blur>div>div{display:none!important}
  .products-standard-body nav.nav-blur>div>button[aria-label="Menyu"]{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:6px;padding:9px;position:relative;z-index:100;cursor:pointer;border:0;background:transparent
  }
  .products-standard-body nav.nav-blur>div>button[aria-label="Menyu"] span{display:block;height:2px;border-radius:3px}
  .products-standard-body nav.nav-blur>div>button[aria-label="Menyu"] span:nth-child(1){width:24px;background:#0ea5e9}
  .products-standard-body nav.nav-blur>div>button[aria-label="Menyu"] span:nth-child(2){width:24px;background:#fff}
  .products-standard-body nav.nav-blur>div>button[aria-label="Menyu"] span:nth-child(3){width:16px;background:#a855f7}
}
@media(max-width:767px){
  .products-standard-body nav.nav-blur>div>a img{height:40px}
  .products-standard-body nav.nav-blur>div>a span{font-size:20px}
  .products-standard-body nav.nav-blur>div{min-height:58px}
}

/* Desktop wheel fills the space below the same fixed navigation used elsewhere. */
@media(min-width:768px){
  html:has(.products-standard-body){height:100%;overflow-y:hidden}
  body.products-standard-body{height:100dvh;min-height:0;overflow-y:hidden}
  .products-page{height:100dvh;min-height:0}
  .products-page .pw-section{height:100dvh;min-height:0;box-sizing:border-box}
  .products-page .pw-desktop{height:100%}
  .products-page .pw-stage{height:100%}
  .products-page .pw-card{cursor:pointer}
}
/* Mobile keeps its natural vertical scroll and horizontal swipe gestures. */
@media(max-width:767px){
  html:has(.products-standard-body){height:auto;overflow-y:auto}
  body.products-standard-body{height:auto;min-height:100svh;overflow-y:auto}
  .products-page{height:auto;min-height:100svh}
  .products-page .pw-section{height:auto;min-height:calc(100svh - 80px)}
  .products-page .pw-mobile-card{cursor:pointer}
}
