/* PRODVERA Premium UI Suite — additive layer only. */
:root{
  --pv-ink:#05070d;
  --pv-panel:rgba(255,255,255,.045);
  --pv-panel-strong:rgba(255,255,255,.072);
  --pv-line:rgba(255,255,255,.11);
  --pv-line-strong:rgba(117,196,255,.34);
  --pv-blue:#2ca8ff;
  --pv-cyan:#68d5ff;
  --pv-green:#36e4aa;
  --pv-shadow:0 24px 70px rgba(0,0,0,.32);
  --pv-radius:24px;
}
html{scrollbar-color:#24425b #07090e;scrollbar-width:thin}
html::selection,body::selection{background:rgba(44,168,255,.28);color:#fff}
body{overflow-x:hidden}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.10;background-image:radial-gradient(rgba(255,255,255,.18) .6px,transparent .6px);background-size:7px 7px;mix-blend-mode:soft-light}
img{image-rendering:auto}
*:focus-visible{outline:2px solid var(--pv-cyan)!important;outline-offset:3px!important}

/* Premium surface language */
.glass,.card,.service-card,.pricing-card,.testimonial-card,.case-card,.feature-card,.role-card,.job-card,.social-card,.faq-item,.stat-row,.rq-card,.contact-card,.panel,.beam-inner{
  border-color:var(--pv-line)!important;
  box-shadow:0 14px 45px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035);
}
.glass{backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}

/* Navigation */
header.fixed,.nav{transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease}
header.fixed.scrolled,.nav.scrolled{background:rgba(5,7,13,.82)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;box-shadow:0 16px 42px rgba(0,0,0,.24)}
.nav-link{position:relative;transition:color .2s ease,transform .2s ease}
.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--pv-blue),var(--pv-cyan));transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1)}

/* Buttons */
.btn-primary,.btn-ghost,.btn,.primary,.submit-btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease!important}
.btn-primary::before,.primary::before,.submit-btn::before{content:"";position:absolute;inset:-60%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.20) 50%,transparent 65%);transform:translateX(-65%) rotate(10deg);transition:transform .8s ease;z-index:-1}
.btn-primary:hover::before,.primary:hover::before,.submit-btn:hover::before{transform:translateX(65%) rotate(10deg)}
.btn-primary:hover,.primary:hover,.submit-btn:hover{transform:translateY(-2px)!important;box-shadow:0 18px 40px rgba(21,127,195,.28)!important}
.btn-ghost:hover,.btn:hover{transform:translateY(-2px)!important;border-color:rgba(104,213,255,.42)!important;background:rgba(255,255,255,.06)!important}

/* Cards / interactive blocks */
.card,.service-card,.pricing-card,.testimonial-card,.case-card,.feature-card,.role-card,.job-card,.social-card,.faq-item,.contact-card,.panel{transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .28s ease,box-shadow .28s ease,background .28s ease}
.card:hover,.service-card:hover,.pricing-card:hover,.testimonial-card:hover,.case-card:hover,.feature-card:hover,.role-card:hover,.job-card:hover,.social-card:hover,.faq-item:hover,.contact-card:hover,.panel:hover{transform:translateY(-5px);border-color:rgba(104,213,255,.24)!important;box-shadow:0 22px 60px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05)}

/* Hero polish */
#home h1,.hero h1{letter-spacing:-.055em;text-shadow:0 8px 45px rgba(0,0,0,.24)}
#home .eyebrow,.hero .eyebrow,.badge{filter:drop-shadow(0 4px 18px rgba(44,168,255,.10))}

/* Fields */
input,textarea,select,.role-trigger,.role-menu{box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
input:hover,textarea:hover,select:hover,.role-trigger:hover{border-color:rgba(104,213,255,.28)!important}
input:focus,textarea:focus,select:focus,.role-trigger:focus{box-shadow:0 0 0 4px rgba(44,168,255,.10),0 14px 30px rgba(0,0,0,.16)!important}

/* Premium form selector */
.role-menu{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 24px 60px rgba(0,0,0,.56),0 0 0 1px rgba(104,213,255,.06) inset!important}
.role-option{min-height:44px}

/* Scroll reveal */
.pv-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.2,1)}
.pv-reveal.is-visible{opacity:1;transform:none}

/* Top progress line */
#pvProgress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:10001;pointer-events:none;background:linear-gradient(90deg,var(--pv-blue),var(--pv-cyan),var(--pv-green));transform-origin:left center;transform:scaleX(0);box-shadow:0 0 16px rgba(44,168,255,.42)}

/* Footer polish */
footer,.footer{border-top-color:rgba(255,255,255,.09)!important}

/* Mobile */
@media (max-width:860px){
  body::after{opacity:.07}
  .card,.service-card,.pricing-card,.testimonial-card,.case-card,.feature-card,.role-card,.job-card,.social-card,.faq-item,.contact-card,.panel{border-radius:20px}
}
@media (max-width:640px){
  #home h1,.hero h1{letter-spacing:-.045em}
  .btn-primary,.btn-ghost,.btn,.primary{min-height:46px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}
