
:root{
  --pv-midnight:#08111F;
  --pv-midnight-2:#050B14;
  --pv-navy:#10233F;
  --pv-platinum:#F8FAFC;
  --pv-cloud:#F3F6FA;
  --pv-ink:#0B1320;
  --pv-crimson:#C8102E;
  --pv-signal:#E11D3F;
  --pv-muted:#9AA7B8;
  --pv-muted-dark:#657182;
  --pv-line:rgba(248,250,252,.10);
  --pv-line-dark:rgba(8,17,31,.10);
  --pv-container:1180px;
  --pv-radius:20px;
  --pv-section-desktop:104px;
  --pv-section-tablet:88px;
  --pv-section-mobile:74px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--pv-midnight);
  color:var(--pv-platinum);
  font-family:Inter,Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.pavatek-site a{color:inherit;text-decoration:none}
body.pavatek-site h1,
body.pavatek-site h2,
body.pavatek-site h3,
body.pavatek-site h4{
  font-family:Manrope,Inter,Arial,Helvetica,sans-serif;
  margin-top:0;
}
body.pavatek-site p{line-height:1.72}
.pv-container{
  width:min(var(--pv-container),calc(100% - 48px));
  margin-inline:auto;
}
.pv-section{
  padding:var(--pv-section-desktop) 0;
  border-bottom:1px solid var(--pv-line);
}
.pv-section--light{
  background:var(--pv-cloud);
  color:var(--pv-ink);
  border-color:var(--pv-line-dark);
}
.pv-eyebrow{
  font-size:11px;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--pv-signal);
}
.pv-h1{
  font-size:clamp(54px,7vw,88px);
  line-height:.97;
  letter-spacing:-.058em;
  font-weight:650;
}
.pv-h2{
  font-size:clamp(38px,4.5vw,60px);
  line-height:1.03;
  letter-spacing:-.045em;
  font-weight:630;
}
.pv-lead{
  font-size:18px;
  color:#B4BFCE;
  max-width:720px;
}
.pv-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pv-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pv-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}

.pv-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:0 20px;
  border-radius:8px;
  border:1px solid var(--pv-line);
  font-size:14px;
  font-weight:780;
  transition:transform .22s ease,background-color .22s ease,border-color .22s ease;
}
.pv-btn--primary{
  background:var(--pv-crimson);
  border-color:var(--pv-crimson);
  color:#fff!important;
  box-shadow:0 12px 34px rgba(200,16,46,.22);
}
.pv-btn--primary:hover{transform:translateY(-2px);background:#D51537}
.pv-btn--secondary:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.26)}

.pv-card{
  border:1px solid var(--pv-line);
  border-radius:var(--pv-radius);
  padding:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
}
.pv-card:hover{border-color:rgba(200,16,46,.32)}
.pv-card p{font-size:14px;color:#95A2B3;margin-bottom:0}
.pv-section--light .pv-card{
  background:#fff;
  border-color:var(--pv-line-dark);
}
.pv-section--light .pv-card p{color:#667281}

/* ---------- Global header ---------- */
.pv-site-header{
  position:fixed;
  z-index:999;
  inset:0 0 auto;
  background:rgba(8,17,31,.84);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.admin-bar .pv-site-header{top:32px}
.pv-header-inner{
  height:80px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.pv-brand img{display:block;width:190px;height:auto}
.pv-desktop-nav{display:flex;align-items:center;gap:27px}
.pv-desktop-nav ul{display:flex;align-items:center;gap:27px;list-style:none;margin:0;padding:0}
.pv-desktop-nav a{
  font-size:13px;
  font-weight:700;
  color:rgba(248,250,252,.82);
}
.pv-desktop-nav .current-menu-item>a,
.pv-desktop-nav a:hover{color:#fff}
.pv-mobile-toggle{
  display:none;
  border:0;
  background:transparent;
  color:#fff;
  width:44px;height:44px;
  cursor:pointer;
}
.pv-mobile-toggle span{
  display:block;width:22px;height:1px;background:#fff;margin:5px auto;transition:.2s ease
}
.pv-mobile-panel{display:none}

/* ---------- Global footer ---------- */
.pv-site-footer{background:#050B14;padding:54px 0 32px;border-top:1px solid var(--pv-line)}
.pv-footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr .75fr;gap:34px}
.pv-footer-brand img{width:190px;height:auto}
.pv-footer-brand p{color:#7F8DA1;font-size:13px;max-width:330px}
.pv-site-footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#718096}
.pv-site-footer a{display:block;color:#A9B4C2;font-size:13px;margin:10px 0}
.pv-footer-bottom{
  display:flex;justify-content:space-between;gap:20px;
  border-top:1px solid var(--pv-line);
  padding-top:24px;margin-top:34px;font-size:12px;color:#677589
}

/* ---------- Elementor helpers ---------- */
.elementor-section.pv-fullbleed,
.e-con.pv-fullbleed{--padding-left:0;--padding-right:0}
.pv-editor-section{padding-block:var(--pv-section-desktop)}
.pv-dark-surface{background:var(--pv-midnight);color:var(--pv-platinum)}
.pv-navy-surface{background:linear-gradient(180deg,#0A1727,#08111F);color:var(--pv-platinum)}
.pv-light-surface{background:var(--pv-cloud);color:var(--pv-ink)}

/* ---------- Signature globe ---------- */
.pv-globe-shell{
  width:min(100%,620px);
  aspect-ratio:1/1;
  margin-inline:auto;
  position:relative;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.pv-globe-shell:before{
  content:"";
  position:absolute;
  width:72%;height:72%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(16,43,78,.18),rgba(8,17,31,0) 68%);
  filter:blur(2px);
  z-index:-1;
}
.pv-globe-canvas{
  display:block;
  width:100%;
  height:100%;
  max-width:620px;
}
.pv-globe-fallback{
  position:absolute;
  inset:18%;
  border:1px solid rgba(180,205,232,.15);
  border-radius:50%;
  opacity:0;
  pointer-events:none;
}
.no-js .pv-globe-canvas{display:none}
.no-js .pv-globe-fallback{opacity:1}

/* ---------- Content offset for fixed header ---------- */
.pv-page-content{padding-top:80px}

/* ---------- Focus ---------- */
body.pavatek-site :focus-visible{
  outline:2px solid var(--pv-signal);
  outline-offset:3px;
}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .pv-desktop-nav{display:none}
  .pv-mobile-toggle{display:block}
  .pv-mobile-panel{
    position:absolute;
    left:24px;right:24px;top:82px;
    padding:20px;
    border:1px solid var(--pv-line);
    border-radius:14px;
    background:#08111F;
    box-shadow:0 22px 60px rgba(0,0,0,.34);
  }
  .pv-site-header.is-open .pv-mobile-panel{display:block}
  .pv-mobile-panel ul{list-style:none;margin:0;padding:0}
  .pv-mobile-panel a{display:block;padding:12px 4px;font-weight:700;color:#F8FAFC}
  .pv-grid-3,.pv-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pv-footer-grid{grid-template-columns:1fr 1fr}
  .pv-section,.pv-editor-section{padding-block:var(--pv-section-tablet)}
}
@media(max-width:782px){.admin-bar .pv-site-header{top:46px}}
@media(max-width:620px){
  .pv-container{width:min(100% - 30px,var(--pv-container))}
  .pv-grid-2,.pv-grid-3,.pv-grid-4,.pv-footer-grid{grid-template-columns:1fr}
  .pv-section,.pv-editor-section{padding-block:var(--pv-section-mobile)}
  .pv-h1{font-size:clamp(46px,13.5vw,54px)}
  .pv-h2{font-size:clamp(34px,10vw,42px)}
  .pv-brand img,.pv-footer-brand img{width:166px}
  .pv-globe-shell{width:min(115vw,520px);margin-left:50%;transform:translateX(-50%)}
  .pv-footer-bottom{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}



/* Add these classes to Elementor containers/widgets */

.pv-hero{
  min-height:690px;
  padding:110px 0 90px;
  background:
    radial-gradient(800px 500px at 82% 18%,rgba(19,53,95,.24),transparent 67%),
    linear-gradient(180deg,#08111F,#050B14);
  overflow:hidden;
}
.pv-hero-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:54px;
  align-items:center;
}
.pv-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
@media(max-width:900px){
  .pv-hero{padding-top:80px}
  .pv-hero-grid{grid-template-columns:1fr}
}
