@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Outfit:wght@600;700;800;900&display=swap');

:root{
  --qv-navy:#0A1328;
  --qv-navy-2:#0F1D3A;
  --qv-blue:#1261FF;
  --qv-cyan:#00D4FF;
  --qv-teal:#00C2A8;
  --qv-white:#F8FBFF;
  --qv-muted:#A8BBDD;
  --qv-line:rgba(135,170,220,.16);
  --qv-line-strong:rgba(0,212,255,.24);
  --qv-card:rgba(12,25,52,.78);
  --qv-shadow:0 20px 80px rgba(0,0,0,.35);
  --qv-glow:0 0 34px rgba(0,212,255,.24);
  --qv-radius:24px;
  --qv-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --qv-display:Outfit,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--qv-font);
  background:
    radial-gradient(circle at 14% 0%, rgba(18,97,255,.24), transparent 25%),
    radial-gradient(circle at 100% 100%, rgba(0,194,168,.10), transparent 24%),
    linear-gradient(180deg,#050B19 0%, #07122A 48%, #040A17 100%);
  color:var(--qv-white);
  line-height:1.65;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 22%, rgba(0,212,255,.09), transparent 24%),
    radial-gradient(circle at 92% 38%, rgba(18,97,255,.08), transparent 22%),
    linear-gradient(180deg, transparent, rgba(0,212,255,.03) 80%, transparent);
  z-index:-1;
}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%;display:block}
.qv-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}

.qv-site-header{position:sticky;top:0;z-index:90;background:rgba(5,11,25,.76);backdrop-filter:blur(18px);border-bottom:1px solid var(--qv-line)}
.qv-nav-wrap{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.qv-logo{display:flex;align-items:center;min-width:0;line-height:0}
.qv-logo-image{display:block;height:auto;width:auto;object-fit:contain;background:transparent}
.qv-logo--header .qv-logo-image{max-height:76px;max-width:370px;filter:drop-shadow(0 8px 22px rgba(0,0,0,.16))}
.qv-logo--footer .qv-logo-image{max-height:104px;max-width:430px;filter:drop-shadow(0 8px 22px rgba(0,0,0,.16))}
.qv-logo--default .qv-logo-image{max-height:86px;max-width:560px;filter:drop-shadow(0 10px 26px rgba(0,0,0,.14))}
.qv-main-nav{display:flex;align-items:center;gap:28px;color:#dbe7f7;font-weight:700;font-size:14px}
.qv-main-nav a{opacity:.95;transition:color .2s ease, opacity .2s ease, transform .2s ease;position:relative}
.qv-main-nav a:hover{color:var(--qv-cyan);opacity:1;transform:translateY(-1px)}
.qv-main-nav > a:after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--qv-cyan),transparent);opacity:0;transform:scaleX(.35);transform-origin:left center;transition:opacity .2s ease, transform .2s ease}
.qv-main-nav > a:hover:after{opacity:1;transform:scaleX(1)}
.qv-lang-switcher{display:flex;align-items:center;gap:8px;margin-left:4px}
.qv-lang-switcher a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;border:1px solid var(--qv-line);font-size:12px;letter-spacing:.08em}
.qv-lang-switcher a.is-active,.qv-lang-switcher a:hover{border-color:var(--qv-cyan);background:rgba(0,212,255,.08);color:var(--qv-cyan)}
.qv-nav-contact{border:1px solid var(--qv-line-strong);border-radius:16px;padding:11px 24px;box-shadow:inset 0 0 18px rgba(0,212,255,.06)}
.qv-nav-contact:hover{background:rgba(0,212,255,.06);box-shadow:0 0 0 1px rgba(0,212,255,.15), 0 10px 34px rgba(0,0,0,.18)}
.qv-menu-toggle{display:none;background:transparent;border:1px solid var(--qv-line);border-radius:14px;width:46px;height:42px;padding:9px;cursor:pointer}
.qv-menu-toggle span{display:block;height:2px;background:#fff;margin:5px;border-radius:4px}
.qv-main{overflow:hidden}

.qv-hero{padding:72px 0 42px}
.qv-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.96fr);gap:30px;align-items:stretch}
.qv-hero-copy,.qv-hero-visual,.qv-cta-card,.qv-card,.qv-project,.qv-page-hero .qv-container,.qv-process-card,.qv-reasons-grid article,.qv-form-wrap{border:1px solid var(--qv-line);border-radius:var(--qv-radius);background:linear-gradient(145deg,rgba(11,24,53,.84),rgba(6,13,30,.78));box-shadow:var(--qv-shadow)}
.qv-hero-copy{padding:58px 46px;min-height:500px;position:relative;overflow:hidden}
.qv-hero-copy:before{content:"";position:absolute;inset:0 0 auto auto;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle, rgba(0,212,255,.14), transparent 68%);filter:blur(18px);opacity:.9;pointer-events:none}
.qv-hero-copy:after{content:"";position:absolute;inset:auto 0 0 0;height:2px;background:linear-gradient(90deg, transparent, rgba(0,212,255,.35), transparent)}
.qv-kicker{display:inline-flex;text-transform:uppercase;color:var(--qv-cyan);font-size:12px;letter-spacing:.14em;font-weight:900;margin-bottom:16px}
.qv-hero h1,.qv-page-hero h1,.qv-section-head h2,.qv-cta h2,.qv-split h2{font-family:var(--qv-display);font-size:clamp(38px,4.8vw,68px);line-height:.94;letter-spacing:-.065em;margin:0 0 22px;font-weight:800}
.qv-hero h1 span,.qv-section h2 span{color:var(--qv-cyan)}
.qv-hero p,.qv-page-hero p,.qv-split p,.qv-cta p,.qv-section-head p{font-size:18px;color:#c8d7ee;max-width:700px;margin:0 0 30px}
.qv-actions{display:flex;gap:14px;flex-wrap:wrap}
.qv-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:14px;padding:14px 24px;font-weight:800;border:1px solid transparent;transition:.22s;cursor:pointer;min-height:54px;font-family:var(--qv-font)}
.qv-btn--primary{background:linear-gradient(135deg,var(--qv-blue),var(--qv-cyan) 58%,var(--qv-teal));box-shadow:var(--qv-glow);color:#fff}
.qv-btn--ghost{border-color:var(--qv-cyan);background:rgba(0,212,255,.03);color:#fff}
.qv-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.qv-btn--primary:hover{box-shadow:0 0 38px rgba(0,212,255,.32), 0 18px 44px rgba(0,0,0,.24)}
.qv-btn--ghost:hover{background:rgba(0,212,255,.08)}

.qv-hero-visual{position:relative;overflow:hidden;min-height:500px;background:linear-gradient(160deg, rgba(6,17,43,.98) 0%, rgba(5,16,41,.92) 46%, rgba(8,23,51,.98) 100%);isolation:isolate}
.qv-hero-glow{position:absolute;inset:0;background:radial-gradient(circle at 82% 22%, rgba(0,212,255,.14), transparent 22%),radial-gradient(circle at 72% 76%, rgba(18,97,255,.20), transparent 20%);animation:qvGlowShift 8s ease-in-out infinite}
.qv-hero-gridlines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);background-size:40px 40px;mask-image:linear-gradient(180deg, rgba(0,0,0,.9), transparent 95%);opacity:.3}
.qv-hero-noise{position:absolute;inset:0;opacity:.07;background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,.75) 1px, transparent 0);background-size:22px 22px;mask-image:linear-gradient(180deg, rgba(0,0,0,.8), transparent 100%)}
.qv-hero-beam{position:absolute;border-radius:999px;filter:blur(10px);opacity:.4;pointer-events:none}
.qv-hero-beam--a{width:360px;height:64px;right:-30px;top:26px;background:linear-gradient(90deg, transparent, rgba(0,212,255,.35), transparent);transform:rotate(-18deg);animation:qvBeam 8s ease-in-out infinite}
.qv-hero-beam--b{width:260px;height:54px;left:44%;bottom:56px;background:linear-gradient(90deg, transparent, rgba(18,97,255,.28), transparent);transform:rotate(18deg);animation:qvBeamReverse 9s ease-in-out infinite}
.qv-hero-rings{position:absolute;inset:18px;background:
  radial-gradient(circle at 72% 52%, transparent 0 126px, rgba(0,212,255,.22) 127px 128px, transparent 130px),
  radial-gradient(circle at 72% 52%, transparent 0 176px, rgba(18,97,255,.16) 177px 178px, transparent 180px),
  radial-gradient(circle at 72% 52%, rgba(0,212,255,.22) 0 4px, transparent 5px),
  linear-gradient(135deg, transparent 0%, rgba(0,212,255,.05) 100%);
  filter:drop-shadow(0 0 30px rgba(0,212,255,.25));animation:qvFloat 9s ease-in-out infinite alternate;
}
.qv-hero-orb{position:absolute;border-radius:999px;filter:blur(1px);opacity:.85}
.qv-hero-orb--a{width:240px;height:240px;right:-40px;top:38px;background:radial-gradient(circle, rgba(0,212,255,.38), rgba(0,212,255,0) 66%);animation:qvPulse 5s ease-in-out infinite}
.qv-hero-orb--b{width:200px;height:200px;left:46%;bottom:16px;background:radial-gradient(circle, rgba(18,97,255,.28), rgba(18,97,255,0) 66%);animation:qvPulse 6s ease-in-out infinite reverse}
.qv-hero-dots{position:absolute;right:32px;bottom:32px;width:180px;height:160px;background-image:radial-gradient(circle, rgba(0,212,255,.75) 1.2px, transparent 1.2px);background-size:16px 16px;opacity:.28;mask-image:linear-gradient(180deg, rgba(0,0,0,.95), transparent 92%)}
.qv-hero-crosshair{position:absolute;left:58%;top:46%;width:18px;height:18px;border-radius:999px;border:1px solid rgba(0,212,255,.38);box-shadow:0 0 0 8px rgba(0,212,255,.04)}
.qv-hero-crosshair:before,.qv-hero-crosshair:after{content:"";position:absolute;background:rgba(0,212,255,.4)}
.qv-hero-crosshair:before{width:1px;height:40px;left:8px;top:-11px}
.qv-hero-crosshair:after{height:1px;width:40px;left:-11px;top:8px}
.qv-hero-card{position:absolute;border:1px solid rgba(0,212,255,.18);border-radius:20px;background:linear-gradient(180deg, rgba(14,31,66,.82), rgba(7,17,39,.90));backdrop-filter:blur(14px);box-shadow:0 18px 50px rgba(0,0,0,.35);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.qv-hero-card strong{display:block;font-family:var(--qv-display);font-size:22px;line-height:1.05;letter-spacing:-.03em}
.qv-hero-card span{display:block;color:#b7c6e0;font-size:14px;margin-top:8px}
.qv-hero-card--main{left:34px;top:42px;padding:22px 22px 20px;max-width:230px}
.qv-hero-card--a{right:34px;top:50px;padding:18px 18px 16px;max-width:190px}
.qv-hero-card--b{left:42px;bottom:114px;padding:18px 18px 16px;max-width:195px}
.qv-hero-card--c{right:44px;bottom:44px;padding:20px 20px 18px;max-width:220px}
.qv-hero-card:after{content:"";display:block;width:46px;height:3px;border-radius:999px;margin-top:14px;background:linear-gradient(90deg,var(--qv-cyan), transparent)}
.qv-hero-card:hover{transform:translateY(-3px);border-color:rgba(0,212,255,.28);box-shadow:0 24px 60px rgba(0,0,0,.4), 0 0 0 1px rgba(0,212,255,.12)}

.qv-section{padding:58px 0}
.qv-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.qv-card{padding:28px 24px 30px;min-height:212px;position:relative;background:linear-gradient(180deg, rgba(10,22,48,.82), rgba(8,16,35,.88));transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease}
.qv-card-icon svg,.qv-feature-list svg,.qv-mini-icon svg{width:34px;height:34px;stroke:var(--qv-cyan);stroke-width:1.8;fill:none}
.qv-card h3,.qv-process-card h3,.qv-reasons-grid h3{margin:16px 0 8px;font-size:23px;font-family:var(--qv-display);letter-spacing:-.03em}
.qv-card p,.qv-process-card p,.qv-reasons-grid p{color:#b9c9e2;margin:0;max-width:320px}
.qv-card a{position:absolute;right:20px;bottom:18px;color:var(--qv-cyan);font-size:24px}
.qv-card:hover,.qv-process-card:hover,.qv-feature-list div:hover,.qv-reasons-grid article:hover{transform:translateY(-4px);border-color:rgba(0,212,255,.24);box-shadow:0 22px 70px rgba(0,0,0,.34),0 0 0 1px rgba(0,212,255,.06)}

.qv-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:36px;align-items:center}
.qv-split h2{font-size:clamp(34px,4vw,58px)}
.qv-feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.qv-feature-list div,.qv-reasons-grid article{border:1px solid var(--qv-line);border-radius:20px;padding:22px;background:linear-gradient(180deg, rgba(11,24,53,.72), rgba(7,15,33,.84))}
.qv-feature-list strong,.qv-reasons-grid h3{display:block;margin:12px 0 4px;font-size:18px;font-family:var(--qv-display);letter-spacing:-.02em}
.qv-feature-list span{color:#b7c6e0;font-size:14px}
.qv-section-head{text-align:center;margin-bottom:26px}
.qv-section-head--left{text-align:left;margin-bottom:24px}
.qv-section-head h2{font-size:clamp(32px,4vw,58px)}
.qv-section-head p{max-width:780px}

.qv-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.qv-process-card{padding:28px 26px;position:relative;overflow:hidden;background:linear-gradient(180deg, rgba(10,22,48,.84), rgba(8,16,35,.9));transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease}
.qv-process-card span{display:inline-flex;font-size:13px;font-weight:900;letter-spacing:.14em;color:var(--qv-cyan);margin-bottom:18px}
.qv-process-card:after{content:"";position:absolute;inset:auto -30px -44px auto;width:150px;height:150px;border-radius:999px;background:radial-gradient(circle, rgba(0,212,255,.18), transparent 62%)}
.qv-reasons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.qv-mini-icon{width:52px;height:52px;border:1px solid rgba(0,212,255,.18);display:grid;place-items:center;border-radius:16px;background:rgba(0,212,255,.03)}

.qv-project-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.qv-project-grid--portfolio{grid-template-columns:repeat(5,1fr)}
.qv-project-grid--large{grid-template-columns:repeat(2,1fr)}
.qv-project{padding:18px;min-height:326px;background:linear-gradient(180deg, rgba(10,22,48,.76), rgba(8,16,35,.88));transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease}
.qv-project--link:hover{transform:translateY(-4px);border-color:rgba(0,212,255,.28);box-shadow:0 22px 80px rgba(0,0,0,.4),0 0 0 1px rgba(0,212,255,.08)}
.qv-project-title{display:block;color:#fff;font-size:20px;line-height:1.05;font-weight:800;font-family:var(--qv-display);letter-spacing:-.03em;margin-top:14px}
.qv-project p{color:#b7c6e0;margin:10px 0 0;font-size:14px}
.qv-project em{display:inline-block;color:var(--qv-cyan);font-style:normal;font-weight:700;margin-top:12px}
.qv-project-preview{height:156px;border:1px solid rgba(0,212,255,.14);border-radius:16px;overflow:hidden;position:relative;background:linear-gradient(180deg, rgba(6,16,38,.95), rgba(8,19,46,.9))}
.qv-project-preview img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease, filter .45s ease}
.qv-footer .qv-logo{display:inline-flex;margin-bottom:10px}
.qv-footer .qv-logo-image{background:transparent !important;filter:drop-shadow(0 8px 24px rgba(0,0,0,.18));}
.qv-project-preview{box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 10px 24px rgba(0,0,0,.18);}
.qv-project-preview img{transform:scale(1.01);}
.qv-project:hover .qv-project-preview img{transform:scale(1.05);filter:saturate(1.04)}


.qv-intake-section{padding-top:22px}
.qv-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start}
.qv-contact-grid--home{align-items:start}
.qv-contact-box{border:1px solid var(--qv-line);background:rgba(12,25,52,.6);border-radius:18px;padding:20px;display:grid;gap:4px;color:#cbd8ed}
.qv-form-wrap{padding:28px;background:linear-gradient(180deg, rgba(10,22,48,.84), rgba(8,16,35,.9))}
.qv-form-wrap h3{font-family:var(--qv-display);font-size:28px;line-height:1.02;letter-spacing:-.04em;margin:0 0 18px}
.qv-form{display:grid;gap:16px}
.qv-form label{display:grid;gap:7px;font-weight:800;color:#dbe8f8}
.qv-form input,.qv-form textarea{width:100%;border:1px solid rgba(150,180,230,.3);border-radius:14px;background:rgba(5,11,25,.75);color:#fff;padding:14px 16px;font:inherit;outline:none}
.qv-form input:focus,.qv-form textarea:focus{border-color:var(--qv-cyan);box-shadow:0 0 0 4px rgba(0,212,255,.12)}
.qv-success{background:rgba(0,194,168,.12);border:1px solid rgba(0,194,168,.5);padding:14px 16px;border-radius:14px}

.qv-cta{padding:50px 0 88px}
.qv-cta-card{padding:40px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(145deg, rgba(11,24,53,.92), rgba(7,15,33,.86))}
.qv-cta h2{font-size:clamp(34px,4vw,54px)}

.qv-page-hero{padding:74px 0 24px}
.qv-page-hero .qv-container{padding:42px}
.qv-page-hero h1{font-size:clamp(38px,5vw,60px)}
.qv-prose{max-width:860px;color:#d8e4f6}
.qv-prose h2{font-family:var(--qv-display);font-size:34px;line-height:1.12}

.qv-footer{border-top:1px solid var(--qv-line);background:linear-gradient(180deg,#061025 0%, #040B18 100%);padding:46px 0 22px}
.qv-footer-grid{display:grid;grid-template-columns:1.3fr .6fr .6fr;gap:28px}
.qv-footer p{color:#9fb2d2;max-width:440px}.qv-footer h4{margin:0 0 12px;font-family:var(--qv-display);font-size:18px}.qv-footer a{display:block;color:#b7c6e0;margin:7px 0}.qv-footer-bottom{color:#7184a4;border-top:1px solid var(--qv-line);margin-top:28px;padding-top:18px;font-size:13px}

.qv-backtop{position:fixed;right:18px;bottom:18px;width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--qv-blue),var(--qv-cyan));box-shadow:0 14px 28px rgba(0,0,0,.35), var(--qv-glow);color:#fff;font-weight:900;z-index:9999;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .22s ease, transform .22s ease, visibility .22s ease, filter .22s ease}
.qv-backtop.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.qv-backtop:hover{filter:brightness(1.08);transform:translateY(-2px)}

@keyframes qvFloat{0%{transform:translateY(0)}100%{transform:translateY(8px)}}
@keyframes qvPulse{0%,100%{transform:scale(1);opacity:.72}50%{transform:scale(1.07);opacity:1}}
@keyframes qvGlowShift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-8px,8px,0)}}
@keyframes qvBeam{0%,100%{opacity:.18;transform:translate3d(0,0,0) rotate(-18deg)}50%{opacity:.42;transform:translate3d(-10px,8px,0) rotate(-14deg)}}
@keyframes qvBeamReverse{0%,100%{opacity:.16;transform:translate3d(0,0,0) rotate(18deg)}50%{opacity:.36;transform:translate3d(10px,-6px,0) rotate(14deg)}}

@media(max-width:1180px){
  .qv-project-grid--portfolio{grid-template-columns:repeat(3,1fr)}
  .qv-process-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1040px){
  .qv-nav-wrap{height:86px}
  .qv-logo--header .qv-logo-image{max-width:320px;max-height:70px}
  .qv-logo--footer .qv-logo-image{max-width:380px;max-height:94px}
  .qv-main-nav{gap:16px;font-size:13px}
}
@media(max-width:940px){
  .qv-nav-wrap{height:80px}
  .qv-logo--header .qv-logo-image{max-height:64px;max-width:300px}
  .qv-logo--footer .qv-logo-image{max-height:86px;max-width:350px}
  .qv-main-nav{position:absolute;left:14px;right:14px;top:82px;display:none;flex-direction:column;align-items:stretch;gap:0;background:rgba(5,11,25,.98);border:1px solid var(--qv-line);border-radius:18px;padding:12px;box-shadow:0 18px 60px rgba(0,0,0,.42)}
  .qv-main-nav.is-open{display:flex}
  .qv-main-nav a{padding:13px 14px}
  .qv-lang-switcher{padding:10px 12px;justify-content:flex-start}
  .qv-menu-toggle{display:block}
  .qv-hero-grid,.qv-split,.qv-contact-grid,.qv-cta-card{grid-template-columns:1fr;display:grid}
  .qv-card-grid,.qv-feature-list,.qv-project-grid,.qv-project-grid--large,.qv-project-grid--portfolio,.qv-process-grid,.qv-reasons-grid{grid-template-columns:1fr}
  .qv-hero-copy{padding:36px 24px;min-height:auto}
  .qv-hero-visual{min-height:380px}
  .qv-hero-card--main{left:20px;top:24px}
  .qv-hero-card--a{right:20px;top:28px}
  .qv-hero-card--b{left:24px;bottom:94px}
  .qv-hero-card--c{right:24px;bottom:24px}
  .qv-cta-card{align-items:start}
  .qv-footer-grid{grid-template-columns:1fr}
  .qv-container{width:min(100% - 24px,1180px)}
}
@media(max-width:520px){
  .qv-hero{padding-top:36px}
  .qv-hero h1,.qv-page-hero h1,.qv-split h2,.qv-section-head h2,.qv-cta h2{font-size:38px}
  .qv-hero-visual{min-height:350px}
  .qv-hero-card strong{font-size:18px}
  .qv-hero-card span{font-size:12px}
  .qv-hero-card--main{max-width:180px;padding:16px}
  .qv-hero-card--a,.qv-hero-card--b,.qv-hero-card--c{max-width:160px;padding:14px}
  .qv-actions{flex-direction:column}
  .qv-btn{width:100%}
  .qv-page-hero .qv-container{padding:28px 20px}
  .qv-card,.qv-project,.qv-feature-list div,.qv-form-wrap,.qv-hero-copy,.qv-hero-visual,.qv-page-hero .qv-container,.qv-cta-card,.qv-process-card,.qv-reasons-grid article{border-radius:20px}
  .qv-backtop{right:12px;bottom:12px;width:46px;height:46px}
  .qv-logo--header .qv-logo-image{max-height:58px;max-width:258px}
  .qv-logo--footer .qv-logo-image{max-height:80px;max-width:320px}
}


/* v1.3.5 premium hero / footer / mobile header polish */
.qv-site-header{border-bottom:1px solid rgba(0,212,255,.08);box-shadow:0 10px 30px rgba(0,0,0,.12)}
.qv-main-nav{position:relative}
.qv-mobile-nav-top{display:none}
.qv-menu-toggle{position:relative;border-radius:16px;overflow:hidden}
.qv-menu-toggle:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(18,97,255,.18), rgba(0,212,255,.12));opacity:0;transition:opacity .22s ease}
.qv-menu-toggle:hover:before{opacity:1}
.qv-menu-toggle span{transition:transform .22s ease, opacity .22s ease}
body.qv-menu-open .qv-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.qv-menu-open .qv-menu-toggle span:nth-child(2){opacity:0}
body.qv-menu-open .qv-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.qv-hero-visual{min-height:520px;padding:18px;background:linear-gradient(180deg, rgba(10,22,48,.72), rgba(8,16,35,.88));box-shadow:0 28px 80px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.02)}
.qv-hero-shell{position:relative;overflow:hidden;width:100%;height:100%;min-height:484px;border-radius:28px;background:linear-gradient(180deg, rgba(7,17,40,.92), rgba(7,18,42,.86));border:1px solid rgba(0,212,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), inset 0 -40px 80px rgba(0,212,255,.03)}
.qv-hero-panel-light{position:absolute;inset:0;background:radial-gradient(circle at 92% 18%, rgba(0,212,255,.18), transparent 28%), radial-gradient(circle at 72% 72%, rgba(18,97,255,.08), transparent 22%);pointer-events:none}
.qv-hero-orbit-wrap{position:absolute;left:50%;top:54%;width:360px;height:360px;transform:translate(-50%,-50%);pointer-events:none}
.qv-hero-rings--inner,.qv-hero-rings--outer{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(0,212,255,.18);box-shadow:0 0 30px rgba(0,212,255,.06), inset 0 0 30px rgba(0,212,255,.03)}
.qv-hero-rings--outer{inset:-56px;border-color:rgba(18,97,255,.14)}
.qv-hero-core{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,var(--qv-cyan),var(--qv-blue));box-shadow:0 0 0 10px rgba(0,212,255,.08),0 0 26px rgba(0,212,255,.34)}
.qv-hero-crosshair{position:absolute;left:50%;top:50%;width:2px;height:2px;transform:translate(-50%,-50%)}
.qv-hero-crosshair:before,.qv-hero-crosshair:after{content:"";position:absolute;background:linear-gradient(90deg, transparent, rgba(0,212,255,.26), transparent)}
.qv-hero-crosshair:before{width:208px;height:1px;left:-103px;top:0}
.qv-hero-crosshair:after{width:1px;height:208px;left:0;top:-103px;background:linear-gradient(180deg, transparent, rgba(0,212,255,.22), transparent)}
.qv-hero-dots{right:0;bottom:0;width:46%;height:48%;opacity:.9;background-image:radial-gradient(circle, rgba(0,212,255,.78) 1.3px, transparent 1.4px);background-size:16px 16px;mask-image:linear-gradient(180deg, transparent 0%, rgba(0,0,0,.96) 28%), linear-gradient(270deg, rgba(0,0,0,.96) 50%, transparent 100%);-webkit-mask-image:linear-gradient(180deg, transparent 0%, rgba(0,0,0,.96) 28%), linear-gradient(270deg, rgba(0,0,0,.96) 50%, transparent 100%)}
.qv-hero-card{min-width:178px;max-width:246px;background:linear-gradient(180deg, rgba(13,28,60,.92), rgba(10,19,40,.96));border:1px solid rgba(0,212,255,.18);border-radius:22px;box-shadow:0 18px 38px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.02)}
.qv-hero-card strong{font-size:17px;line-height:1.12}
.qv-hero-card span{display:block;max-width:150px;color:#d9e7f8}
.qv-hero-card i{display:block;width:54px;height:4px;border-radius:999px;margin-top:14px;background:linear-gradient(90deg,var(--qv-cyan),rgba(0,212,255,0))}
.qv-hero-card--main{left:26px;top:26px}
.qv-hero-card--a{right:26px;top:26px}
.qv-hero-card--b{left:34px;bottom:26px}
.qv-hero-card--c{right:26px;bottom:26px}
.qv-hero-glow{background:radial-gradient(circle at 85% 18%, rgba(0,212,255,.18), transparent 26%), radial-gradient(circle at 18% 78%, rgba(18,97,255,.10), transparent 30%);animation:qvGlowShift 9s ease-in-out infinite}

.qv-footer{position:relative;overflow:hidden;background:linear-gradient(180deg,#060f23 0%, #040b18 100%)}
.qv-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg, transparent, rgba(0,212,255,.35), transparent)}
.qv-footer-hero{margin-bottom:28px;padding:28px 30px;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:center;background:linear-gradient(135deg, rgba(12,25,52,.94), rgba(7,15,33,.92));position:relative;overflow:hidden}
.qv-footer-hero:before{content:"";position:absolute;right:-100px;top:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle, rgba(0,212,255,.14), transparent 62%)}
.qv-footer-hero h3{margin:8px 0 10px;font-family:var(--qv-display);font-size:clamp(28px,3vw,42px);line-height:1.02;letter-spacing:-.04em}
.qv-footer-hero p{margin:0;color:#b6c8e6;max-width:640px}
.qv-footer-hero-side{display:grid;justify-items:end;gap:18px;position:relative;z-index:1}
.qv-footer-pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.qv-footer-pills span{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;border:1px solid rgba(0,212,255,.16);background:rgba(10,20,44,.72);color:#dcedff;font-size:13px;font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.qv-footer-grid{align-items:start}
.qv-footer-col{padding:26px;border:1px solid rgba(135,170,220,.14);border-radius:24px;background:linear-gradient(180deg, rgba(10,22,48,.54), rgba(8,16,35,.74));box-shadow:0 18px 44px rgba(0,0,0,.18)}
.qv-footer-brand{padding-top:22px}
.qv-footer .qv-logo{margin-bottom:16px}
.qv-footer a{transition:color .22s ease, transform .22s ease}
.qv-footer a:hover{color:#fff;transform:translateX(3px)}
.qv-footer-bottom{margin-top:22px}

@media(max-width:940px){
  body.qv-menu-open{overflow:hidden}
  .qv-mobile-nav-top{display:flex;flex-direction:column;gap:2px;padding:12px 12px 14px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.04)}
  .qv-mobile-nav-top strong{font-family:var(--qv-display);font-size:20px;line-height:1}
  .qv-mobile-nav-top span{color:#9fd6ef;font-size:12px}
  .qv-main-nav{top:86px;padding:12px;background:rgba(6,12,28,.98);border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.02)}
  .qv-main-nav a{border-radius:14px;font-weight:700}
  .qv-main-nav a:hover{background:rgba(0,212,255,.06)}
  .qv-lang-switcher{margin-top:8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.05)}
  .qv-nav-contact{margin-top:10px;justify-content:center}
  .qv-hero-visual{min-height:430px;padding:14px}
  .qv-hero-shell{min-height:400px}
  .qv-hero-orbit-wrap{width:250px;height:250px;top:53%}
  .qv-hero-rings--outer{inset:-34px}
  .qv-hero-card{max-width:172px;min-width:unset;padding:14px 14px 16px}
  .qv-hero-card strong{font-size:15px}
  .qv-hero-card span{font-size:12px;max-width:126px}
  .qv-hero-card--main{left:18px;top:18px}
  .qv-hero-card--a{right:18px;top:18px}
  .qv-hero-card--b{left:18px;bottom:18px}
  .qv-hero-card--c{right:18px;bottom:18px}
  .qv-footer-hero{grid-template-columns:1fr}
  .qv-footer-hero-side{justify-items:start}
  .qv-footer-pills{justify-content:flex-start}
}
@media(max-width:520px){
  .qv-site-header{background:rgba(4,10,23,.92)}
  .qv-nav-wrap{height:82px;gap:14px}
  .qv-menu-toggle{width:52px;height:52px;border-radius:18px}
  .qv-main-nav{left:10px;right:10px;top:78px;padding:10px}
  .qv-logo--header .qv-logo-image{max-height:54px;max-width:236px}
  .qv-hero-visual{min-height:390px}
  .qv-hero-shell{min-height:362px;border-radius:24px}
  .qv-hero-orbit-wrap{width:192px;height:192px;top:54%}
  .qv-hero-rings--outer{inset:-24px}
  .qv-hero-card{max-width:138px;padding:12px 12px 14px;border-radius:18px}
  .qv-hero-card strong{font-size:13px}
  .qv-hero-card span{font-size:11px;max-width:100px}
  .qv-hero-card i{margin-top:10px;width:42px}
  .qv-footer-hero{padding:22px 18px;border-radius:22px}
  .qv-footer-col{padding:22px;border-radius:20px}
  .qv-footer-pills span{font-size:12px;padding:9px 12px}
}


/* v1.3.6 ultimate polish */
.qv-card,.qv-feature-list div,.qv-process-card,.qv-reasons-grid article,.qv-contact-box,.qv-form-wrap,.qv-cta-card,.qv-footer-col{transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease,background .26s ease}
.qv-card:hover,.qv-feature-list div:hover,.qv-process-card:hover,.qv-reasons-grid article:hover,.qv-contact-box:hover,.qv-form-wrap:hover,.qv-footer-col:hover{transform:translateY(-4px);border-color:rgba(0,212,255,.26);box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 0 1px rgba(0,212,255,.08)}
.qv-card a,.qv-feature-list div svg,.qv-mini-icon,.qv-process-card span{transition:transform .24s ease,color .24s ease,filter .24s ease}
.qv-card:hover a,.qv-feature-list div:hover svg,.qv-reasons-grid article:hover .qv-mini-icon{transform:translateX(3px);filter:drop-shadow(0 0 10px rgba(0,212,255,.28))}
.qv-btn{position:relative;overflow:hidden}
.qv-btn:after{content:"";position:absolute;inset:auto auto -45% -12%;width:80px;height:180%;transform:rotate(22deg);background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.16), rgba(255,255,255,0));opacity:0;transition:transform .36s ease, opacity .36s ease}
.qv-btn:hover:after{opacity:1;transform:translateX(220px) rotate(22deg)}

.qv-project-grid--portfolio{gap:20px}
.qv-project{position:relative;overflow:hidden;padding:18px 18px 20px;min-height:356px;border-radius:24px;background:linear-gradient(180deg, rgba(11,25,53,.9), rgba(7,14,32,.96));box-shadow:0 16px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.02)}
.qv-project:before{content:"";position:absolute;left:-30px;right:-30px;top:-30px;height:120px;background:radial-gradient(circle at top right, rgba(0,212,255,.14), transparent 46%);pointer-events:none}
.qv-project--link:hover{transform:translateY(-8px);border-color:rgba(0,212,255,.28);box-shadow:0 28px 90px rgba(0,0,0,.4),0 0 0 1px rgba(0,212,255,.08)}
.qv-project-preview{height:170px;border-radius:18px;background:linear-gradient(180deg, rgba(6,16,38,.95), rgba(8,19,46,.9));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 12px 26px rgba(0,0,0,.2)}
.qv-project-browser{position:absolute;z-index:2;left:10px;right:10px;top:10px;height:24px;padding:0 8px;display:flex;align-items:center;gap:6px;border-radius:999px;background:rgba(5,13,29,.78);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(6px)}
.qv-project-browser span{width:8px;height:8px;border-radius:50%;background:#6b7f9d}
.qv-project-browser span:nth-child(1){background:#00d4ff}
.qv-project-browser span:nth-child(2){background:#26b0ff}
.qv-project-browser span:nth-child(3){background:#6ad5ff}
.qv-project-preview img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform .55s ease, filter .55s ease}
.qv-project-overlay{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;gap:10px;align-items:flex-end;z-index:2}
.qv-project-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,9,20,.05), rgba(4,9,20,.10) 42%, rgba(4,9,20,.68));pointer-events:none}
.qv-project:hover .qv-project-preview img{transform:scale(1.07) translateY(-2px);filter:saturate(1.08) contrast(1.02)}
.qv-project-badge,.qv-project-chip,.qv-project-kicker{display:inline-flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.01em}
.qv-project-badge,.qv-project-chip{padding:8px 10px;border-radius:999px;background:rgba(4,12,26,.78);border:1px solid rgba(0,212,255,.16);box-shadow:0 8px 24px rgba(0,0,0,.18);font-size:12px;color:#e8f6ff}
.qv-project-chip{justify-content:flex-end;max-width:56%;text-align:right}
.qv-project-kicker{margin-top:14px;color:var(--qv-cyan);font-size:12px;text-transform:uppercase;letter-spacing:.14em}
.qv-project-title{margin-top:10px;font-size:22px}
.qv-project p{margin-top:10px;color:#c2d1e8}
.qv-project em{margin-top:14px;position:relative;padding-right:16px}
.qv-project em:after{content:"↗";position:absolute;right:0;top:0}

.qv-contact-grid--home{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:28px}
.qv-contact-panel{display:grid;gap:18px;align-content:start}
.qv-contact-panel h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.05em;margin:0}
.qv-contact-panel p{margin:0;color:#d6e4f7;max-width:560px}
.qv-contact-box{padding:22px 22px;background:linear-gradient(180deg, rgba(10,22,48,.82), rgba(7,15,33,.9));box-shadow:0 18px 46px rgba(0,0,0,.18)}
.qv-contact-box strong{font-family:var(--qv-display);font-size:22px;line-height:1}
.qv-contact-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.qv-contact-highlights article{padding:18px;border-radius:18px;border:1px solid rgba(135,170,220,.14);background:linear-gradient(180deg, rgba(10,22,48,.58), rgba(8,16,35,.76));box-shadow:0 12px 34px rgba(0,0,0,.16)}
.qv-contact-highlights article strong{display:block;font-family:var(--qv-display);font-size:19px;line-height:1.05;letter-spacing:-.03em;margin-bottom:8px}
.qv-contact-highlights article span{display:block;color:#b8c9e3;font-size:14px;line-height:1.55}
.qv-form-wrap{padding:30px 30px 28px;border-radius:26px;background:linear-gradient(180deg, rgba(11,24,52,.94), rgba(7,15,33,.94));box-shadow:0 24px 60px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.03)}
.qv-form-head{margin-bottom:18px}
.qv-form-head h3{margin-bottom:10px}
.qv-form-head p{margin:0;color:#b8c9e3;max-width:560px}
.qv-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.qv-form{gap:14px}
.qv-form label{font-size:14px}
.qv-form input,.qv-form textarea{background:rgba(5,11,25,.82);border-color:rgba(150,180,230,.24)}
.qv-form textarea{min-height:160px;resize:vertical}
.qv-form .qv-btn{margin-top:4px;width:100%}

.qv-cta-card{padding:44px;border-radius:28px;box-shadow:0 26px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.03);background:linear-gradient(145deg, rgba(11,24,53,.96), rgba(7,15,33,.92))}
.qv-cta-card:hover{transform:translateY(-3px);border-color:rgba(0,212,255,.26)}

.qv-footer-hero{padding:34px 36px;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:26px;align-items:center}
.qv-footer-hero-copy{min-width:0}
.qv-footer-hero-copy p{max-width:620px}
.qv-footer-hero-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:16px;min-width:0;width:100%}
.qv-footer-pills{max-width:100%;justify-content:flex-end;gap:10px}
.qv-footer-pills span{max-width:100%;white-space:nowrap}
.qv-footer-hero-action{display:flex;justify-content:flex-end;width:100%}
.qv-footer-hero-action .qv-btn{white-space:nowrap;min-width:182px;max-width:100%;flex:0 0 auto}

@media(max-width:1240px){
  .qv-footer-hero{grid-template-columns:1fr}
  .qv-footer-hero-side,.qv-footer-hero-action{align-items:flex-start;justify-content:flex-start}
  .qv-footer-pills{justify-content:flex-start}
}
@media(max-width:1080px){
  .qv-project-grid--portfolio{grid-template-columns:repeat(3,1fr)}
  .qv-contact-highlights{grid-template-columns:1fr 1fr}
}
@media(max-width:940px){
  .qv-project-grid--portfolio{grid-template-columns:repeat(2,1fr)}
  .qv-process-grid,.qv-reasons-grid{grid-template-columns:repeat(2,1fr)}
  .qv-contact-grid--home{grid-template-columns:1fr}
  .qv-contact-highlights{grid-template-columns:repeat(3,1fr)}
  .qv-footer-hero{padding:28px 24px}
}
@media(max-width:720px){
  .qv-contact-highlights{grid-template-columns:1fr}
  .qv-process-grid,.qv-reasons-grid,.qv-project-grid--portfolio{grid-template-columns:1fr}
  .qv-form-row{grid-template-columns:1fr}
}
@media(max-width:520px){
  .qv-contact-panel h2{font-size:40px}
  .qv-form-wrap{padding:24px 18px 20px;border-radius:22px}
  .qv-project{min-height:332px;padding:16px}
  .qv-project-preview{height:160px}
  .qv-project-title{font-size:20px}
  .qv-footer-hero{padding:22px 18px}
  .qv-footer-pills{gap:8px}
  .qv-footer-pills span{white-space:normal}
  .qv-footer-hero-action .qv-btn{width:100%}
}


/* v1.3.7 final footer/menu fix */
.qv-main-nav{gap:22px}
.qv-main-nav > a:first-of-type{color:#fff}
.qv-footer-hero{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;overflow:hidden}
.qv-footer-hero-side{align-items:stretch;justify-content:center;display:grid;grid-template-columns:1fr;gap:16px;min-width:0}
.qv-footer-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;max-width:100%;min-width:0}
.qv-footer-pills span{white-space:nowrap;flex:0 1 auto;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.qv-footer-hero-action{display:flex;justify-content:flex-end;width:100%;position:relative;z-index:2}
.qv-footer-hero-action .qv-btn{min-width:156px;max-width:180px;width:auto;flex:0 0 auto;padding-inline:24px;white-space:nowrap;position:relative;z-index:3}
.qv-footer-hero .qv-btn:after{display:none}
.qv-footer-hero .qv-btn:hover{transform:translateY(-2px)}
.qv-menu-toggle.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.qv-menu-toggle.is-active span:nth-child(2){opacity:0}
.qv-menu-toggle.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
body.qv-menu-open .qv-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.qv-menu-open .qv-menu-toggle span:nth-child(2){opacity:0}
body.qv-menu-open .qv-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1240px){
  .qv-footer-hero{grid-template-columns:1fr}
  .qv-footer-hero-side{align-items:start}
  .qv-footer-pills{justify-content:flex-start}
  .qv-footer-hero-action{justify-content:flex-start}
}
@media(max-width:940px){
  .qv-main-nav{max-height:calc(100vh - 100px);overflow-y:auto;transform-origin:top center;animation:qvMenuDrop .18s ease-out}
  .qv-main-nav a{display:flex;align-items:center;justify-content:space-between;width:100%}
  .qv-nav-contact{width:100%;text-align:center;display:flex!important}
  .qv-footer-hero-action .qv-btn{max-width:none;width:auto;min-width:156px}
}
@media(max-width:520px){
  .qv-footer-hero-action .qv-btn{width:100%;max-width:none}
  .qv-footer-pills span{white-space:normal}
}
@keyframes qvMenuDrop{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}


/* v1.3.8/v1.3.9 mobile menu close-button visibility fix */
.qv-site-header{z-index:9990}
.qv-menu-toggle{z-index:10020;position:relative}
.qv-menu-toggle span{position:relative;z-index:2}
.qv-main-nav{z-index:10000}
@media(max-width:940px){
  .qv-menu-toggle{display:grid;place-items:center;z-index:10050;background:rgba(5,13,30,.88);backdrop-filter:blur(14px);box-shadow:0 12px 34px rgba(0,0,0,.28)}
  .qv-menu-toggle span{width:24px;margin:3px 0}
  body.qv-menu-open .qv-menu-toggle,
  .qv-menu-toggle.is-active{
    position:fixed;
    top:14px;
    right:14px;
    width:54px;
    height:54px;
    border-radius:18px;
    border-color:rgba(0,212,255,.34);
    background:linear-gradient(135deg, rgba(10,22,48,.98), rgba(4,12,28,.98));
    box-shadow:0 18px 46px rgba(0,0,0,.42),0 0 0 1px rgba(0,212,255,.10),0 0 30px rgba(0,212,255,.16);
  }
  .qv-main-nav{
    z-index:10000;
    top:88px;
    max-height:calc(100vh - 106px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  body.qv-menu-open .qv-main-nav{padding-top:12px}
  body.qv-menu-open:before{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(2,7,18,.28);
    z-index:9980;
    pointer-events:none;
  }
}
@media(max-width:520px){
  body.qv-menu-open .qv-menu-toggle,
  .qv-menu-toggle.is-active{top:12px;right:12px;width:52px;height:52px}
  .qv-main-nav{top:82px;max-height:calc(100vh - 96px)}
}

/* v1.3.9 Qavirio Legal Launch */
.qv-legal-hero .qv-container{position:relative;overflow:hidden}
.qv-legal-hero .qv-actions{margin-top:24px}
.qv-legal-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:24px;align-items:start}
.qv-legal-card{border:1px solid var(--qv-line);border-radius:var(--qv-radius);background:linear-gradient(145deg,rgba(11,24,53,.88),rgba(6,13,30,.82));box-shadow:var(--qv-shadow);padding:30px;min-width:0}
.qv-legal-card h2,.qv-legal-prose h2{font-family:var(--qv-display);letter-spacing:-.035em;line-height:1.12;color:#fff;margin:0 0 14px;font-size:clamp(26px,3vw,38px)}
.qv-legal-card p,.qv-legal-prose p{color:#c8d7ee;font-size:17px;line-height:1.75}
.qv-legal-table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:18px}
.qv-legal-table th,.qv-legal-table td{padding:14px 12px;border-bottom:1px solid rgba(135,170,220,.14);vertical-align:top;text-align:left}
.qv-legal-table th{width:32%;color:#9fb2d2;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.qv-legal-table td{color:#e8f2ff;font-weight:650;word-break:break-word}
.qv-legal-table a,.qv-legal-prose a{color:var(--qv-cyan);font-weight:800;text-decoration:none}
.qv-legal-highlight{border:1px solid rgba(0,212,255,.24);background:rgba(0,212,255,.08);border-radius:18px;padding:16px 18px;color:#fff!important}
.qv-legal-section--soft{padding-top:0}
.qv-legal-prose{max-width:980px;border:1px solid var(--qv-line);border-radius:var(--qv-radius);background:linear-gradient(145deg,rgba(11,24,53,.72),rgba(6,13,30,.68));box-shadow:var(--qv-shadow);padding:34px}
.qv-footer-bottom{line-height:1.7}
@media (max-width:900px){.qv-legal-grid{grid-template-columns:1fr}.qv-legal-card,.qv-legal-prose{padding:24px 20px}.qv-legal-table th,.qv-legal-table td{display:block;width:100%;padding:10px 0}.qv-legal-table th{border-bottom:0}.qv-legal-table td{padding-bottom:14px}.qv-legal-actions .qv-btn{width:100%}}

/* v2.0 Premium Digital Studio Rebuild */
:root{
  --qv20-ink:#050a16;
  --qv20-panel:rgba(10,21,48,.78);
  --qv20-panel-strong:rgba(12,27,62,.92);
  --qv20-cream:#f5efe4;
  --qv20-gold:#d8ad58;
  --qv20-cyan:#64e8ff;
  --qv20-violet:#7d6bff;
}
body.home{
  background:
    radial-gradient(circle at 10% 6%, rgba(100,232,255,.16), transparent 24%),
    radial-gradient(circle at 82% 10%, rgba(125,107,255,.18), transparent 24%),
    radial-gradient(circle at 30% 92%, rgba(216,173,88,.10), transparent 28%),
    linear-gradient(180deg,#030816 0%,#06152f 42%,#040917 100%) !important;
}
body.home .qv-main{overflow:hidden;}
.qv20-hero{position:relative;isolation:isolate;padding:84px 0 54px;min-height:calc(100vh - 96px);display:flex;align-items:center;}
.qv20-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 88%);z-index:-3;}
.qv20-hero:after{content:"";position:absolute;inset:8% -18% auto auto;width:60vw;height:60vw;border-radius:999px;background:conic-gradient(from 180deg,rgba(100,232,255,.0),rgba(100,232,255,.14),rgba(125,107,255,.18),rgba(216,173,88,.10),rgba(100,232,255,.0));filter:blur(38px);opacity:.8;z-index:-2;animation:qv20Spin 32s linear infinite;}
.qv20-bg-orb{position:absolute;border-radius:999px;filter:blur(24px);opacity:.75;z-index:-1;pointer-events:none;}
.qv20-bg-orb--a{width:260px;height:260px;left:4%;top:16%;background:radial-gradient(circle,rgba(100,232,255,.22),transparent 66%);}
.qv20-bg-orb--b{width:360px;height:360px;right:5%;bottom:8%;background:radial-gradient(circle,rgba(125,107,255,.18),transparent 66%);}
.qv20-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:34px;align-items:center;}
.qv20-hero-copy{position:relative;padding:56px 52px;border:1px solid rgba(255,255,255,.12);border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));box-shadow:0 34px 110px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(24px);overflow:hidden;}
.qv20-hero-copy:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0 0,rgba(100,232,255,.16),transparent 36%),radial-gradient(circle at 100% 0,rgba(216,173,88,.10),transparent 34%);pointer-events:none;}
.qv20-hero-copy>*{position:relative;z-index:2;}
.qv20-eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:var(--qv20-gold);margin-bottom:18px;}
.qv20-eyebrow:before{content:"";width:9px;height:9px;border-radius:999px;background:var(--qv20-cyan);box-shadow:0 0 18px rgba(100,232,255,.8);}
.qv20-hero h1,.qv20-section-head h2,.qv20-proof h2,.qv20-contact-copy h2{font-family:var(--qv-display);font-size:clamp(44px,6.2vw,88px);line-height:.88;letter-spacing:-.08em;margin:0;color:#fff;}
.qv20-hero p{font-size:clamp(18px,1.6vw,22px);color:#d5e3f7;margin:26px 0 32px;max-width:760px;}
.qv20-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px;}
.qv20-actions .qv-btn{border-radius:18px;min-height:58px;padding-inline:28px;}
.qv20-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.qv20-metrics div{padding:16px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.10);}
.qv20-metrics strong{display:block;font-family:var(--qv-display);font-size:26px;line-height:1;color:#fff;letter-spacing:-.04em;}
.qv20-metrics span{display:block;color:#aabbd8;font-size:13px;font-weight:700;margin-top:8px;}
.qv20-studio{position:relative;border-radius:34px;min-height:620px;border:1px solid rgba(100,232,255,.18);background:linear-gradient(145deg,rgba(5,13,31,.96),rgba(11,28,64,.78));box-shadow:0 34px 120px rgba(0,0,0,.48),0 0 0 1px rgba(100,232,255,.04),inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;}
.qv20-studio:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(100,232,255,.18),transparent 28%),radial-gradient(circle at 20% 86%,rgba(216,173,88,.10),transparent 32%);}
.qv20-studio:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.20) 1px,transparent 0);background-size:24px 24px;opacity:.18;mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent);}
.qv20-studio-chrome{position:absolute;left:22px;right:22px;top:22px;height:48px;border-radius:18px;background:rgba(1,5,15,.58);border:1px solid rgba(255,255,255,.10);display:flex;align-items:center;gap:8px;padding:0 16px;z-index:3;color:#93a9ca;font-size:12px;}
.qv20-studio-chrome span{width:10px;height:10px;border-radius:999px;background:#f06a5b;}
.qv20-studio-chrome span:nth-child(2){background:#e8be57}.qv20-studio-chrome span:nth-child(3){background:#6ce39e}.qv20-studio-chrome em{margin-left:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.qv20-studio-stage{position:absolute;inset:90px 24px 24px;z-index:2;}
.qv20-studio-header{position:relative;z-index:4;max-width:360px;padding:22px;border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(18px);}
.qv20-studio-header span{display:block;color:var(--qv20-gold);font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;margin-bottom:10px;}
.qv20-studio-header strong{display:block;font-family:var(--qv-display);font-size:30px;line-height:1;letter-spacing:-.04em;color:#fff;}
.qv20-studio-header small{display:block;color:#b4c5de;margin-top:12px;line-height:1.55;font-size:13px;}
.qv20-orbit{position:absolute;right:-30px;top:70px;width:410px;height:410px;border-radius:999px;background:radial-gradient(circle,rgba(100,232,255,.18) 0 2px,transparent 3px),radial-gradient(circle,transparent 0 94px,rgba(100,232,255,.24) 95px 96px,transparent 97px),radial-gradient(circle,transparent 0 162px,rgba(125,107,255,.20) 163px 164px,transparent 165px);animation:qv20Float 7s ease-in-out infinite alternate;}
.qv20-orbit i{position:absolute;width:16px;height:16px;border-radius:999px;background:var(--qv20-cyan);box-shadow:0 0 30px rgba(100,232,255,.8);}
.qv20-orbit i:nth-child(1){left:62px;top:110px}.qv20-orbit i:nth-child(2){right:70px;top:78px;background:var(--qv20-gold);box-shadow:0 0 30px rgba(216,173,88,.55)}.qv20-orbit i:nth-child(3){right:116px;bottom:66px;background:var(--qv20-violet);}
.qv20-orbit b{position:absolute;left:50%;top:50%;width:92px;height:92px;transform:translate(-50%,-50%);border-radius:30px;background:linear-gradient(135deg,var(--qv20-cyan),var(--qv20-violet));box-shadow:0 24px 80px rgba(100,232,255,.18);}
.qv20-studio-cards{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;z-index:5;}
.qv20-studio-cards article{padding:18px;border-radius:22px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(16px);}
.qv20-studio-cards span{display:inline-flex;width:34px;height:34px;border-radius:12px;align-items:center;justify-content:center;background:rgba(100,232,255,.10);color:var(--qv20-cyan);font-weight:900;font-size:12px;margin-bottom:12px;}
.qv20-studio-cards strong{display:block;color:#fff;font-family:var(--qv-display);font-size:22px;letter-spacing:-.03em;}
.qv20-studio-cards em{display:block;color:#adc0db;font-style:normal;font-size:13px;margin-top:5px;}
.qv20-proof{padding:28px 0 54px;}
.qv20-proof-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(340px,1.05fr);gap:28px;align-items:center;padding:34px;border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.10);box-shadow:0 28px 90px rgba(0,0,0,.26);}
.qv20-proof h2{font-size:clamp(34px,4.4vw,62px);}
.qv20-proof p{margin:18px 0 0;color:#c2d2ea;font-size:18px;}
.qv20-proof-strip{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;}
.qv20-proof-strip span{padding:12px 16px;border-radius:999px;border:1px solid rgba(100,232,255,.18);background:rgba(100,232,255,.075);font-weight:900;color:#eaf8ff;}
.qv20-section{padding:72px 0;}
.qv20-section-head{max-width:820px;margin-bottom:28px;}
.qv20-section-head h2,.qv20-contact-copy h2{font-size:clamp(38px,5vw,72px);}
.qv20-section-head--split{display:flex;align-items:end;justify-content:space-between;gap:24px;max-width:none;}
.qv20-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.qv20-service-card{position:relative;padding:30px;border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.10);box-shadow:0 20px 70px rgba(0,0,0,.24);overflow:hidden;min-height:280px;}
.qv20-service-card:before{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:999px;background:radial-gradient(circle,rgba(100,232,255,.18),transparent 68%);}
.qv20-icon{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:rgba(100,232,255,.10);border:1px solid rgba(100,232,255,.18);color:var(--qv20-cyan);margin-bottom:24px;}
.qv20-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.qv20-service-card h3{font-family:var(--qv-display);font-size:30px;line-height:1;letter-spacing:-.05em;margin:0 0 14px;color:#fff;}
.qv20-service-card p{margin:0;color:#bfd0ea;font-size:16px;}
.qv20-case-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;}
.qv20-case-card{grid-column:span 4;display:flex;flex-direction:column;min-height:440px;border-radius:30px;overflow:hidden;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10);box-shadow:0 26px 80px rgba(0,0,0,.28);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.qv20-case-card.is-featured{grid-column:span 8;}
.qv20-case-card:hover{transform:translateY(-6px);border-color:rgba(100,232,255,.28);box-shadow:0 32px 110px rgba(0,0,0,.38);}
.qv20-case-screen{position:relative;height:230px;background:#07142e;overflow:hidden;}
.qv20-case-card.is-featured .qv20-case-screen{height:290px;}
.qv20-case-screen img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:saturate(1.08) contrast(1.02);transition:transform .4s ease;}
.qv20-case-card:hover img{transform:scale(1.04);}
.qv20-browser{position:absolute;left:14px;right:14px;top:14px;height:30px;border-radius:14px;background:rgba(5,10,22,.75);border:1px solid rgba(255,255,255,.12);z-index:2;display:flex;align-items:center;gap:6px;padding:0 12px;}
.qv20-browser span{width:8px;height:8px;border-radius:99px;background:#ff6a5f}.qv20-browser span:nth-child(2){background:#f1c45c}.qv20-browser span:nth-child(3){background:#63dd88}
.qv20-case-body{padding:24px;display:flex;flex-direction:column;flex:1;}
.qv20-case-body span{color:var(--qv20-gold);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;}
.qv20-case-body h3{font-family:var(--qv-display);font-size:30px;letter-spacing:-.05em;line-height:1;margin:10px 0 12px;color:#fff;}
.qv20-case-body p{color:#bfcee8;margin:0 0 18px;}
.qv20-case-body em{margin-top:auto;color:var(--qv20-cyan);font-style:normal;font-weight:900;}
.qv20-process-wrap{padding:38px;border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.10);box-shadow:0 24px 90px rgba(0,0,0,.24);}
.qv20-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.qv20-process-grid article{padding:24px;border-radius:24px;background:rgba(4,11,27,.54);border:1px solid rgba(255,255,255,.10);}
.qv20-process-grid span{color:var(--qv20-cyan);font-family:var(--qv-display);font-size:40px;letter-spacing:-.07em;}
.qv20-process-grid h3{font-family:var(--qv-display);font-size:24px;line-height:1;margin:12px 0;color:#fff;letter-spacing:-.04em;}
.qv20-process-grid p{margin:0;color:#b8c9e4;font-size:15px;}
.qv20-contact-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:28px;align-items:start;}
.qv20-contact-copy{position:sticky;top:128px;padding:38px;border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.10);box-shadow:0 24px 90px rgba(0,0,0,.24);}
.qv20-contact-copy p{font-size:18px;color:#c7d7ef;margin:22px 0 24px;}
.qv20-contact-points{display:flex;flex-wrap:wrap;gap:10px;}
.qv20-contact-points span{padding:10px 12px;border-radius:999px;background:rgba(216,173,88,.08);border:1px solid rgba(216,173,88,.22);color:#f8e6bd;font-weight:800;font-size:13px;}
.qv20-contact .qv-form-wrap{border-radius:34px;border-color:rgba(100,232,255,.16);}
@keyframes qv20Spin{to{transform:rotate(360deg)}}
@keyframes qv20Float{from{transform:translateY(-10px)}to{transform:translateY(14px)}}
@media(max-width:1100px){.qv20-hero-grid,.qv20-proof-grid,.qv20-contact-grid{grid-template-columns:1fr}.qv20-hero{padding-top:54px}.qv20-studio{min-height:560px}.qv20-service-grid{grid-template-columns:1fr}.qv20-process-grid{grid-template-columns:repeat(2,1fr)}.qv20-case-card,.qv20-case-card.is-featured{grid-column:span 6}.qv20-contact-copy{position:relative;top:auto}}
@media(max-width:760px){.qv20-hero-copy{padding:34px 22px;border-radius:26px}.qv20-hero h1{font-size:48px;letter-spacing:-.065em}.qv20-metrics{grid-template-columns:1fr}.qv20-studio{min-height:700px;border-radius:26px}.qv20-orbit{right:-130px;top:120px}.qv20-studio-cards{grid-template-columns:1fr}.qv20-proof-grid,.qv20-process-wrap,.qv20-contact-copy{padding:24px;border-radius:26px}.qv20-proof-strip{justify-content:flex-start}.qv20-section-head--split{display:block}.qv20-section-head--split .qv-btn{margin-top:18px}.qv20-case-card,.qv20-case-card.is-featured{grid-column:1 / -1}.qv20-process-grid{grid-template-columns:1fr}.qv20-contact .qv-form-wrap{border-radius:26px}.qv20-actions .qv-btn{width:100%}}
@media(max-width:520px){.qv20-hero{padding:34px 0}.qv20-hero h1{font-size:40px}.qv20-hero p{font-size:17px}.qv20-studio{min-height:650px}.qv20-studio-stage{inset:82px 14px 14px}.qv20-studio-header{padding:18px}.qv20-studio-header strong{font-size:24px}.qv20-case-screen,.qv20-case-card.is-featured .qv20-case-screen{height:210px}.qv20-section{padding:50px 0}}


/* v2.1 reference homepage rebuild */
body.home{background:#ffffff;color:#0b1730}
body.home:before{display:none}
body.home .qv-site-header{background:rgba(255,255,255,.96);border-bottom:1px solid #e8edf5;backdrop-filter:blur(12px);box-shadow:none}
body.home .qv-nav-wrap{height:82px}
body.home .qv-main-nav{color:#4c5970;font-size:13px;gap:22px}
body.home .qv-main-nav a:hover{color:#081c46}
body.home .qv-main-nav > a:after{background:linear-gradient(90deg,#1d64ff,transparent)}
body.home .qv-lang-switcher a{border-color:#d8e0ed;color:#516178}
body.home .qv-lang-switcher a.is-active,body.home .qv-lang-switcher a:hover{background:#edf3ff;color:#1a66ff;border-color:#bcd0ff}
body.home .qv-nav-contact{border-color:#071b48;background:#071b48;color:#fff;padding:10px 18px;border-radius:12px;box-shadow:none}
body.home .qv-nav-contact:hover{background:#0c2357}
body.home .qv-main{overflow:visible}
body.home .qv-footer-hero{display:none}
body.home .qv-footer{background:#fff;border-top:1px solid #edf1f7;padding:26px 0 14px;color:#4d5a6f}
body.home .qv-footer-grid{grid-template-columns:auto 1fr auto;align-items:center;gap:24px}
body.home .qv-footer-brand p{display:none}
body.home .qv-footer .qv-logo{margin:0}
body.home .qv-footer .qv-logo--footer .qv-logo-image{max-height:48px;max-width:180px;filter:none}
body.home .qv-footer-col h4{display:none}
body.home .qv-footer-col{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
body.home .qv-footer a{margin:0;color:#5c6880;font-size:14px}
body.home .qv-footer a:hover{color:#081c46}
body.home .qv-footer-bottom{border-top:none;margin-top:16px;padding-top:8px;color:#8e99ab;font-size:12px}
body.home .qv-backtop{background:#071b48;box-shadow:0 10px 22px rgba(7,27,72,.18)}

.qv21-home{padding:0 0 30px;background:#fff;color:#0b1730}
.qv21-home .qv-container{width:min(1280px,calc(100% - 64px))}
.qv21-hero{padding:56px 0 26px}
.qv21-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);align-items:center;gap:44px}
.qv21-pill,.qv21-kicker{display:inline-flex;align-items:center;gap:8px;color:#617087;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.qv21-pill:before,.qv21-kicker:before{content:'';width:7px;height:7px;border-radius:50%;background:#2d7cff;box-shadow:0 0 0 6px #edf4ff}
.qv21-hero-copy h1{font-family:var(--qv-display);font-size:clamp(48px,6vw,84px);line-height:.97;letter-spacing:-.06em;color:#09152d;margin:0 0 18px;max-width:730px}
.qv21-hero-copy h1 span{color:#2d7cff}
.qv21-hero-copy p{max-width:620px;color:#5c687d;font-size:20px;line-height:1.68;margin:0 0 28px}
.qv21-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.qv21-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 24px;border-radius:14px;font-weight:800;font-size:16px;transition:.2s}
.qv21-btn--primary{background:#071b48;color:#fff;box-shadow:0 16px 30px rgba(7,27,72,.14)}
.qv21-btn--secondary{border:1px solid #d8e0ec;color:#0a1938;background:#fff}
.qv21-btn:hover{transform:translateY(-2px)}
.qv21-trustline{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.qv21-avatars{display:flex;align-items:center;padding-left:4px}
.qv21-avatars span{width:34px;height:34px;border-radius:50%;margin-left:-8px;border:3px solid #fff;background:linear-gradient(135deg,#d8dee9,#f8fafc)}
.qv21-avatars span:nth-child(1){background:linear-gradient(135deg,#e2c2b5,#f6ece8)}
.qv21-avatars span:nth-child(2){background:linear-gradient(135deg,#c9b5a0,#f0e7df)}
.qv21-avatars span:nth-child(3){background:linear-gradient(135deg,#9d7f6a,#e4d8cf)}
.qv21-avatars span:nth-child(4){background:linear-gradient(135deg,#d8bd9b,#f6eee5)}
.qv21-avatars span:nth-child(5){background:linear-gradient(135deg,#b58e6d,#ead9cd)}
.qv21-stars-wrap{display:grid;gap:2px}
.qv21-stars{font-size:15px;color:#0f2b61}
.qv21-stars strong{color:#56657b;font-weight:700}
.qv21-trust-text{color:#7a879b;font-size:14px}
.qv21-device-stage{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}
.qv21-circle{position:absolute;width:560px;height:560px;border-radius:50%;border:1px solid #e1eaf7;top:10px;left:20px}
.qv21-laptop{position:relative;width:min(620px,100%);z-index:2}
.qv21-device-screen{background:radial-gradient(circle at 70% 25%, rgba(38,115,255,.34), transparent 28%),linear-gradient(180deg,#09152d,#071325 70%);border-radius:24px;border:8px solid #0a1224;box-shadow:0 32px 60px rgba(4,16,44,.18);overflow:hidden}
.qv21-mini-nav{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.06);font-size:12px;color:#93a2c0}
.qv21-mini-nav span{margin-right:auto;color:#dfe9ff;font-weight:800}.qv21-mini-nav i{margin-left:auto;color:#8db6ff;font-style:normal}
.qv21-screen-copy{padding:48px 42px 110px}.qv21-screen-copy strong{display:block;font-family:var(--qv-display);font-size:54px;line-height:.98;letter-spacing:-.05em;color:#fff;max-width:420px}.qv21-screen-copy strong span{color:#2d7cff}
.qv21-mini-buttons{display:flex;gap:12px;margin-top:22px}.qv21-mini-buttons span{display:inline-flex;width:116px;height:42px;border-radius:12px;background:linear-gradient(135deg,#0f5fff,#3ca7ff)}.qv21-mini-buttons span:last-child{width:134px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.qv21-laptop-base{width:112%;height:22px;background:linear-gradient(180deg,#d6d8df,#aaafb9);margin:-2px auto 0;border-radius:0 0 40px 40px;transform:translateX(-6%)}
.qv21-phone{position:absolute;right:0;bottom:44px;width:180px;z-index:3}
.qv21-phone-screen{padding:20px 16px 18px;min-height:310px}.qv21-phone-screen small{display:block;color:#92a1c0;font-size:12px;margin-bottom:12px}.qv21-phone-screen strong{display:block;color:#fff;font-size:26px;line-height:1.1;letter-spacing:-.03em;margin-bottom:20px}.qv21-phone-ui{height:92px;border-radius:18px;background:linear-gradient(180deg,#edf4ff,#ffffff);border:1px solid rgba(255,255,255,.12)}
.qv21-section{padding:30px 0}
.qv21-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:26px}
.qv21-head h2{font-family:var(--qv-display);font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-.05em;color:#09152d;margin:0;max-width:540px}
.qv21-link-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dde5f0;border-radius:14px;min-height:48px;padding:0 18px;color:#081b47;font-weight:700;background:#fff}
.qv21-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.qv21-project-card{display:flex;flex-direction:column;border:1px solid #e6edf5;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 14px 28px rgba(16,31,64,.06);min-height:100%}
.qv21-project-image{height:255px;background:#f6f8fc;overflow:hidden}.qv21-project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.qv21-project-card:hover .qv21-project-image img{transform:scale(1.04)}
.qv21-project-body{padding:18px 22px 22px;display:grid;gap:8px;position:relative;flex:1}.qv21-project-tag{font-size:13px;color:#8492a8}.qv21-project-body h3{font-size:30px;line-height:1.02;letter-spacing:-.04em;color:#08152f;margin:0;font-family:var(--qv-display)}.qv21-project-body p{margin:0;color:#6d7b90;font-size:16px;padding-right:54px}.qv21-project-arrow{position:absolute;right:20px;bottom:22px;width:38px;height:38px;border-radius:12px;background:#071b48;color:#fff;display:grid;place-items:center;font-size:24px}
.qv21-head--services{display:grid;grid-template-columns:280px 1fr;align-items:start;gap:38px}
.qv21-services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.qv21-service-card{padding:8px 8px 0 8px}.qv21-service-icon{display:inline-block;width:58px;height:58px;border:1px solid #dbe4f0;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfcff);margin-bottom:18px;position:relative}.qv21-service-icon:before{content:'';position:absolute;inset:18px;border:2px solid #9bc0ff;border-radius:10px}
.qv21-service-card h3{font-size:28px;line-height:1.05;letter-spacing:-.04em;color:#0a1731;margin:0 0 10px;font-family:var(--qv-display)}.qv21-service-card p{margin:0 0 12px;color:#6c7a8e;font-size:16px;line-height:1.62}.qv21-service-card a{font-size:14px;color:#2f6fff;font-weight:700}
.qv21-head--process{display:grid;grid-template-columns:280px 1fr;align-items:start;gap:38px}.qv21-process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;padding-top:6px;position:relative}.qv21-process-grid:before{content:'';position:absolute;left:12px;right:12px;top:23px;height:1px;background:#e6edf5}
.qv21-step{position:relative;padding-top:0}.qv21-step-num{position:relative;z-index:2;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#f5f7fb;border:1px solid #d9e1ed;font-weight:800;color:#4f5e74;margin-bottom:16px}.qv21-step h3{font-size:24px;line-height:1.06;letter-spacing:-.04em;color:#0a1731;margin:0 0 8px;font-family:var(--qv-display)}.qv21-step p{margin:0;color:#6c7a8e;font-size:15px;line-height:1.6}
.qv21-logo-row{display:grid;grid-template-columns:repeat(6,1fr);gap:24px;margin-top:6px;padding:6px 0 0}.qv21-logo-row span{display:flex;align-items:center;justify-content:center;color:#8a96aa;font-size:18px;font-weight:700;letter-spacing:.01em;min-height:42px;text-align:center}
.qv21-contact-grid{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(420px,1.05fr);gap:24px;align-items:stretch}
.qv21-contact-card{padding:44px 40px;border-radius:22px;background:radial-gradient(circle at 100% 100%, rgba(39,105,255,.22), transparent 35%),linear-gradient(180deg,#08152f,#07142c);color:#fff;box-shadow:0 24px 48px rgba(8,21,47,.18)}
.qv21-kicker--light{color:#b6c9f5}.qv21-kicker--light:before{background:#3a86ff;box-shadow:none}
.qv21-contact-card h2{font-family:var(--qv-display);font-size:clamp(40px,4.6vw,64px);line-height:.98;letter-spacing:-.05em;margin:0 0 14px}.qv21-contact-card p{color:#d1dcf4;font-size:18px;line-height:1.7;max-width:500px;margin:0 0 26px}.qv21-contact-card ul{list-style:none;display:flex;gap:24px;flex-wrap:wrap;padding:0;margin:0}.qv21-contact-card li{position:relative;padding-left:22px;color:#dbe5fa;font-size:16px}.qv21-contact-card li:before{content:'•';position:absolute;left:0;top:0;color:#5ba0ff;font-size:22px;line-height:1}
.qv21-form-card{padding:24px;border:1px solid #e6edf5;border-radius:22px;background:#fff;box-shadow:0 14px 28px rgba(16,31,64,.06)}
.qv21-success{margin-bottom:14px;border-radius:14px;background:#edf9f2;border:1px solid #cbead4;color:#1c6d39;padding:14px 16px;font-weight:700}
.qv21-form{display:grid;gap:16px}.qv21-form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.qv21-form input,.qv21-form textarea{width:100%;border:1px solid #e1e8f2;border-radius:14px;padding:16px 18px;font:inherit;color:#0b1730;background:#fff;outline:none}.qv21-form input:focus,.qv21-form textarea:focus{border-color:#9fc1ff;box-shadow:0 0 0 4px #edf4ff}.qv21-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;background:#071b48;border:none;border-radius:14px;color:#fff;font-weight:800;font-size:16px;cursor:pointer}
@media (max-width:1180px){.qv21-services-grid{grid-template-columns:repeat(2,1fr)}.qv21-process-grid{grid-template-columns:repeat(3,1fr)}.qv21-logo-row{grid-template-columns:repeat(3,1fr)}}
@media (max-width:980px){body.home .qv-main-nav{top:74px;background:#fff;border-color:#e6edf5;box-shadow:0 18px 36px rgba(17,32,68,.12)}body.home .qv-main-nav a{color:#42526a}body.home .qv-nav-wrap{height:74px}.qv21-home .qv-container{width:min(100% - 28px,1280px)}.qv21-hero-grid,.qv21-head--services,.qv21-head--process,.qv21-contact-grid{grid-template-columns:1fr}.qv21-services-grid,.qv21-project-grid,.qv21-process-grid{grid-template-columns:1fr 1fr}.qv21-device-stage{min-height:420px}.qv21-screen-copy strong{font-size:40px}.qv21-phone{width:150px}}
@media (max-width:640px){body.home .qv-footer-grid{grid-template-columns:1fr;justify-items:start}body.home .qv-footer-col{gap:12px}.qv21-hero{padding-top:32px}.qv21-hero-copy h1{font-size:48px}.qv21-hero-copy p{font-size:17px}.qv21-actions{flex-direction:column}.qv21-btn{width:100%}.qv21-device-stage{min-height:320px}.qv21-circle{width:320px;height:320px;left:0;top:10px}.qv21-screen-copy{padding:28px 24px 72px}.qv21-screen-copy strong{font-size:30px}.qv21-phone{width:118px;right:8px;bottom:20px}.qv21-project-grid,.qv21-services-grid,.qv21-process-grid,.qv21-logo-row,.qv21-form-row{grid-template-columns:1fr}.qv21-head{align-items:flex-start}.qv21-project-image{height:210px}.qv21-contact-card,.qv21-form-card{padding:22px}.qv21-contact-card h2{font-size:40px}}


/* v2.1.1 exact polish round 1 */
body.home .qv-logo--header .qv-logo-image{max-height:46px;max-width:176px;filter:none;image-rendering:auto}
body.home .qv-logo--footer .qv-logo-image{max-height:42px;max-width:168px;filter:none}
body.home .qv-nav-wrap{height:80px}
body.home .qv-main-nav{gap:24px;font-size:12.5px;font-weight:700}
body.home .qv-main-nav > a{padding-top:2px;padding-bottom:2px}
body.home .qv-nav-contact{min-height:44px;padding:0 18px;border-radius:10px;font-size:13px}
.qv21-home .qv-container{width:min(1320px,calc(100% - 72px))}
.qv21-hero{padding:58px 0 34px;border-top:1px solid #eef2f8}
.qv21-hero-grid{gap:54px;align-items:start}
.qv21-pill,.qv21-kicker{font-size:10.5px;letter-spacing:.14em;margin-bottom:20px}
.qv21-hero-copy{padding-top:24px}
.qv21-hero-copy h1{font-size:clamp(60px,6.6vw,96px);max-width:720px;margin-bottom:20px}
.qv21-hero-copy p{max-width:585px;font-size:18px;line-height:1.72;margin-bottom:30px}
.qv21-actions{margin-bottom:30px}
.qv21-btn{min-height:54px;padding:0 22px;font-size:15px;border-radius:12px}
.qv21-btn--secondary{border-color:#d7dfea;box-shadow:0 2px 0 rgba(8,27,71,.02)}
.qv21-trustline{gap:16px}
.qv21-stars{font-size:14px}
.qv21-trust-text{font-size:13px}
.qv21-device-stage{min-height:560px;padding-top:4px}
.qv21-circle{width:600px;height:600px;left:56px;top:8px}
.qv21-laptop{width:min(670px,100%);transform:rotate(-2deg) translateY(22px)}
.qv21-device-screen{border-radius:26px;border-width:10px;box-shadow:0 38px 70px rgba(4,16,44,.16)}
.qv21-mini-nav{padding:14px 20px;font-size:11px}
.qv21-screen-copy{padding:52px 44px 126px}
.qv21-screen-copy strong{font-size:56px;max-width:430px}
.qv21-mini-buttons span{width:118px;height:40px;border-radius:11px}
.qv21-laptop-base{width:118%;height:24px;background:linear-gradient(180deg,#d8dbe1,#b4bac4 55%,#979eaa);border-radius:0 0 42px 42px;transform:translateX(-9%)}
.qv21-device-stage:after{content:'';position:absolute;bottom:0;right:-20px;width:78%;height:118px;background:linear-gradient(180deg,#8a9099,#6f7680);border-radius:20px 20px 0 0;z-index:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}
.qv21-phone{width:176px;right:18px;bottom:58px}
.qv21-phone-screen{min-height:330px;border-radius:24px}
.qv21-phone-ui{height:100px;border-radius:20px}
.qv21-section{padding:36px 0}
.qv21-head{margin-bottom:28px}
.qv21-head h2{font-size:clamp(34px,3.8vw,56px);max-width:560px}
.qv21-link-btn{min-height:50px;padding:0 20px;border-radius:13px;font-size:14px}
.qv21-project-grid{gap:24px}
.qv21-project-card{border-radius:18px;box-shadow:0 14px 30px rgba(16,31,64,.05)}
.qv21-project-image{height:260px;background:#f7f9fc}
.qv21-project-body{padding:18px 20px 22px}
.qv21-project-tag{font-size:12px;color:#8b97aa;text-transform:none}
.qv21-project-body h3{font-size:22px;letter-spacing:-.03em}
.qv21-project-body p{font-size:14px;line-height:1.55;color:#6e7c92;padding-right:58px;max-width:260px}
.qv21-project-arrow{width:34px;height:34px;border-radius:10px;right:18px;bottom:20px;font-size:18px}
.qv21-head--services,.qv21-head--process{grid-template-columns:260px 1fr;gap:34px}
.qv21-services-grid{gap:18px}
.qv21-service-card{padding:4px 8px 0 0}
.qv21-service-icon{width:56px;height:56px;border-radius:16px;margin-bottom:16px}
.qv21-service-card h3{font-size:20px;margin-bottom:8px}
.qv21-service-card p{font-size:14px;line-height:1.68;margin-bottom:10px;max-width:250px}
.qv21-service-card a{font-size:13px}
#werkwijze.qv21-section{scroll-margin-top:110px}
.qv21-process-grid{gap:18px;padding-top:2px}
.qv21-process-grid:before{top:22px}
.qv21-step-num{width:34px;height:34px;font-size:12px;margin-bottom:14px}
.qv21-step h3{font-size:18px;margin-bottom:6px}
.qv21-step p{font-size:13px;line-height:1.55;max-width:170px}
.qv21-logo-row{padding-top:8px;gap:18px}.qv21-logo-row span{font-size:16px;min-height:40px;color:#7c889b}
.qv21-contact{padding-top:28px;padding-bottom:34px}
.qv21-contact-grid{gap:22px}
.qv21-contact-card,.qv21-form-card{border-radius:18px}
.qv21-contact-card{padding:42px 38px}
.qv21-contact-card h2{font-size:56px;max-width:460px}
.qv21-contact-card p{font-size:16px;line-height:1.7;max-width:450px}
.qv21-contact-card ul{gap:20px}.qv21-contact-card li{font-size:14px}
.qv21-form-card{padding:18px;border-color:#e4ebf4}
.qv21-form{gap:12px}.qv21-form-row{gap:12px}
.qv21-form input,.qv21-form textarea{padding:15px 16px;border-radius:12px;font-size:14px}
.qv21-submit{min-height:52px;border-radius:12px;font-size:15px}
body.home .qv-footer--clean{padding:20px 0 14px}
body.home .qv-footer-grid--clean{grid-template-columns:auto 1fr auto;gap:26px;align-items:center}
body.home .qv-footer-nav-clean,body.home .qv-footer-contact-clean{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
body.home .qv-footer-contact-clean{justify-content:flex-end}
body.home .qv-footer-contact-clean a{font-weight:600;color:#5a667d}
body.home .qv-footer-bottom--clean{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;font-size:11px;color:#8d98ab;margin-top:14px;padding-top:10px;border-top:1px solid #eef2f8}
body.home .qv-footer-legal-inline{display:flex;gap:14px;flex-wrap:wrap}
body.home .qv-footer-legal-inline a{font-size:11px;color:#8d98ab}
@media (max-width:1180px){.qv21-home .qv-container{width:min(100% - 40px,1320px)}.qv21-project-image{height:230px}.qv21-screen-copy strong{font-size:48px}.qv21-contact-card h2{font-size:48px}}
@media (max-width:980px){body.home .qv-logo--header .qv-logo-image{max-height:42px;max-width:160px}.qv21-home .qv-container{width:min(100% - 28px,1320px)}.qv21-hero-grid{gap:30px}.qv21-hero-copy h1{font-size:62px}.qv21-device-stage{min-height:430px}.qv21-circle{width:420px;height:420px;left:50%;transform:translateX(-50%)}.qv21-laptop{transform:none;width:min(560px,100%)}.qv21-device-stage:after{width:100%;right:0;height:76px}.qv21-screen-copy{padding:36px 32px 92px}.qv21-screen-copy strong{font-size:38px}.qv21-phone{width:136px;right:12px;bottom:30px}.qv21-head--services,.qv21-head--process,.qv21-contact-grid{grid-template-columns:1fr}.qv21-project-grid,.qv21-services-grid{grid-template-columns:repeat(2,1fr)}.qv21-process-grid{grid-template-columns:repeat(3,1fr)}body.home .qv-footer-grid--clean{grid-template-columns:1fr;justify-items:start}body.home .qv-footer-contact-clean{justify-content:flex-start}}
@media (max-width:640px){body.home .qv-nav-wrap{height:72px}.qv21-home .qv-container{width:min(100% - 22px,1320px)}.qv21-hero{padding-top:28px}.qv21-hero-copy{padding-top:0}.qv21-hero-copy h1{font-size:46px;max-width:420px}.qv21-hero-copy p{font-size:16px}.qv21-device-stage{min-height:280px}.qv21-circle{width:290px;height:290px;top:0}.qv21-laptop{width:100%;transform:none}.qv21-screen-copy{padding:24px 22px 58px}.qv21-screen-copy strong{font-size:26px;max-width:240px}.qv21-mini-buttons span{width:90px;height:30px}.qv21-laptop-base{height:14px}.qv21-device-stage:after{display:none}.qv21-phone{width:104px;right:6px;bottom:16px}.qv21-phone-screen{min-height:210px;padding:14px 12px}.qv21-phone-screen strong{font-size:18px}.qv21-phone-ui{height:62px}.qv21-project-grid,.qv21-services-grid,.qv21-process-grid,.qv21-logo-row,.qv21-form-row{grid-template-columns:1fr}.qv21-project-image{height:200px}.qv21-head h2{font-size:34px}.qv21-contact-card h2{font-size:36px}.qv21-contact-card,.qv21-form-card{padding:20px}body.home .qv-footer-bottom--clean{font-size:10px}body.home .qv-footer-legal-inline{gap:10px}}


/* v2.1.2 exact polish round 2 */
body.home .qv-logo--header .qv-logo-image{max-height:58px;max-width:210px;filter:drop-shadow(0 4px 16px rgba(32,118,255,.10))}
body.home .qv-logo--footer .qv-logo-image{max-height:52px;max-width:190px}
body.home .qv-site-header{background:rgba(255,255,255,.985)}
body.home .qv-main-nav{gap:22px;font-size:13px}
body.home .qv-nav-contact{background:linear-gradient(135deg,#071b48,#143b87);box-shadow:0 12px 24px rgba(10,31,78,.12)}
body.home .qv-footer-col{padding:0 !important;border:none !important;background:transparent !important;box-shadow:none !important;transition:none !important}
body.home .qv-footer-col:hover{transform:none !important;border:none !important;box-shadow:none !important;background:transparent !important}
body.home .qv-footer-grid--clean{padding-top:8px}
body.home .qv-footer-nav-clean a,body.home .qv-footer-contact-clean a{color:#5d6880;font-size:14px}
body.home .qv-footer-nav-clean a:hover,body.home .qv-footer-contact-clean a:hover{color:#0b1730}
body.home .qv-footer-bottom--clean{margin-top:10px}
.qv21-hero{padding:58px 0 42px}
.qv21-hero-grid{gap:62px}
.qv21-hero-copy h1{font-size:clamp(64px,6.8vw,102px);max-width:690px}
.qv21-hero-copy p{max-width:560px;font-size:18px}
.qv21-device-stage{min-height:590px}
.qv21-hero-glow{position:absolute;right:40px;top:70px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle, rgba(36,119,255,.26), rgba(36,119,255,.06) 42%, transparent 68%);filter:blur(12px)}
.qv21-laptop{width:min(690px,100%);transform:rotate(-4deg) translateY(26px);z-index:2}
.qv21-device-screen{background:radial-gradient(circle at 72% 28%, rgba(44,116,255,.42), transparent 22%),radial-gradient(circle at 18% 78%, rgba(0,220,255,.12), transparent 26%),linear-gradient(180deg,#07152e,#061228 68%,#081a38);overflow:visible}
.qv21-mini-nav{padding:16px 22px;color:#8397bc}
.qv21-screen-copy{padding:52px 46px 120px}
.qv21-screen-copy strong{font-size:54px;max-width:430px;line-height:.98}
.qv21-screen-copy p{margin:16px 0 18px;max-width:340px;color:#9eb0d2;font-size:15px;line-height:1.55}
.qv21-screen-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.qv21-screen-stats div{display:grid;gap:2px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);min-width:112px}
.qv21-screen-stats b{color:#fff;font-size:14px}.qv21-screen-stats span{font-size:11px;color:#99add2}
.qv21-float-card{position:absolute;display:grid;gap:2px;padding:14px 16px;border-radius:16px;background:rgba(12,25,53,.92);border:1px solid rgba(111,153,255,.20);box-shadow:0 22px 34px rgba(4,16,44,.28)}
.qv21-float-card strong{color:#fff;font-size:15px}.qv21-float-card span{color:#99add2;font-size:12px;max-width:150px;line-height:1.45}
.qv21-float-card--one{right:-24px;top:110px}.qv21-float-card--two{left:44px;bottom:64px;background:rgba(8,20,48,.96)}
.qv21-phone{width:188px;right:10px;bottom:44px;z-index:3}
.qv21-phone-screen{background:radial-gradient(circle at 60% 22%, rgba(58,127,255,.36), transparent 25%),linear-gradient(180deg,#08152f,#07142a)}
.qv21-phone-screen strong{font-size:28px}
.qv21-phone-ui{display:grid;gap:8px;background:transparent;border:none;height:auto}
.qv21-phone-ui span{display:block;height:42px;border-radius:14px;background:linear-gradient(180deg,#ffffff,#eaf1fb);box-shadow:0 10px 22px rgba(6,17,44,.20)}
.qv21-phone-ui span:first-child{height:78px;border-radius:18px}
.qv21-title-card{position:relative;padding:28px 28px 24px;border-radius:26px;background:linear-gradient(180deg,#fff, #f7faff);border:1px solid #e6eef8;box-shadow:0 18px 34px rgba(17,35,75,.06)}
.qv21-title-card:after{content:'';position:absolute;right:18px;top:18px;width:76px;height:76px;border-radius:22px;background:radial-gradient(circle, rgba(45,124,255,.14), transparent 65%)}
.qv21-title-card .qv21-kicker{margin-bottom:14px}
.qv21-title-card h2{max-width:460px}
.qv21-head--split{align-items:center}
.qv21-head--services,.qv21-head--process{grid-template-columns:320px 1fr;align-items:center}
.qv21-title-card--stack{min-height:246px;display:flex;flex-direction:column;justify-content:center}
.qv21-project-grid{align-items:stretch}
.qv21-project-card{border-radius:22px;box-shadow:0 20px 34px rgba(16,31,64,.07);overflow:hidden}
.qv21-project-card:hover{transform:translateY(-6px);box-shadow:0 26px 46px rgba(16,31,64,.10)}
.qv21-project-image{height:272px;padding:10px;background:#f6f8fc}
.qv21-project-image img{border-radius:14px;box-shadow:0 10px 18px rgba(12,22,44,.12)}
.qv21-project-body{padding:16px 18px 18px}
.qv21-project-body h3{font-size:20px}
.qv21-project-body p{max-width:none;padding-right:48px}
.qv21-project-tag{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#a0aabd}
.qv21-service-card{padding:18px 18px 14px;border-radius:22px;border:1px solid #e8eef7;background:linear-gradient(180deg,#ffffff,#fbfcff);box-shadow:0 14px 28px rgba(16,31,64,.05)}
.qv21-service-icon{display:grid;place-items:center;width:62px;height:62px;border:none;border-radius:18px;background:linear-gradient(145deg,#eef5ff,#ffffff);box-shadow:inset 0 0 0 1px #dbe7fa,0 16px 24px rgba(36,119,255,.10);color:#2b76ff}
.qv21-service-icon svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.8;fill:none}
.qv21-service-icon:before{display:none}
.qv21-services-grid{gap:20px}
.qv21-service-card h3{font-size:22px}
.qv21-service-card p{font-size:14px}
.qv21-process-grid{padding:22px 24px;border-radius:24px;background:linear-gradient(180deg,#fff,#fbfcff);border:1px solid #e8eef7;box-shadow:0 14px 28px rgba(16,31,64,.05)}
.qv21-process-grid:before{left:32px;right:32px;top:38px}
.qv21-step-num{width:44px;height:44px;background:linear-gradient(180deg,#ffffff,#eef4ff);box-shadow:0 8px 18px rgba(36,119,255,.08);border-color:#dae5f8}
.qv21-step h3{font-size:19px}
.qv21-contact-card{background:radial-gradient(circle at 100% 100%, rgba(39,105,255,.22), transparent 35%),radial-gradient(circle at 20% 20%, rgba(0,191,255,.15), transparent 32%),linear-gradient(180deg,#07152f,#06112a);box-shadow:0 26px 46px rgba(8,21,47,.20)}
.qv21-form-card{box-shadow:0 20px 36px rgba(16,31,64,.06)}
@media (max-width:980px){.qv21-head--services,.qv21-head--process{grid-template-columns:1fr}.qv21-title-card--stack{min-height:auto}.qv21-device-stage{min-height:470px}.qv21-laptop{transform:none;width:min(600px,100%)}.qv21-float-card--one{right:0;top:90px}.qv21-float-card--two{left:20px;bottom:48px}.qv21-phone{width:150px;bottom:24px}}
@media (max-width:640px){body.home .qv-logo--header .qv-logo-image{max-height:48px;max-width:176px}.qv21-title-card{padding:22px 20px 20px;border-radius:20px}.qv21-device-stage{min-height:320px}.qv21-hero-glow{width:220px;height:220px;right:20px;top:40px}.qv21-laptop{width:100%}.qv21-screen-copy{padding:24px 22px 66px}.qv21-screen-copy p,.qv21-screen-stats,.qv21-float-card{display:none}.qv21-project-image{height:210px;padding:8px}.qv21-service-card{padding:16px}.qv21-process-grid{padding:18px}.qv21-process-grid:before{display:none}.qv21-phone{width:106px;right:4px;bottom:14px}}


/* v2.1.3 luxury hero & logo rebuild */
body.home .qv-logo--header .qv-logo-image{max-height:66px;max-width:238px;filter:drop-shadow(0 10px 22px rgba(44,116,255,.10))}
body.home .qv-logo--footer .qv-logo-image{max-height:56px;max-width:208px}
body.home .qv-nav-wrap{height:86px}
body.home .qv-site-header{border-bottom:1px solid #edf2f9}
.qv21-hero{padding:54px 0 44px;background:radial-gradient(circle at 76% 16%, rgba(59,123,255,.05), transparent 22%),linear-gradient(180deg,#ffffff,#fbfcff)}
.qv21-hero-grid{grid-template-columns:minmax(0,590px) minmax(0,1fr);gap:70px;align-items:center}
.qv21-pill,.qv21-kicker{font-size:10.5px;letter-spacing:.15em}
.qv21-hero-copy{padding-top:8px}
.qv21-hero-copy h1{font-size:clamp(66px,6.9vw,106px);line-height:.95;max-width:640px;letter-spacing:-.065em}
.qv21-hero-copy p{max-width:530px;font-size:19px;line-height:1.72;color:#5e6b80}
.qv21-actions{gap:14px}
.qv21-btn--primary{background:linear-gradient(135deg,#081b49,#143b87);box-shadow:0 18px 30px rgba(9,27,73,.16)}
.qv21-btn--secondary{background:#fff}
.qv21-device-stage--image{min-height:560px;display:flex;align-items:center;justify-content:center}
.qv21-circle{width:640px;height:640px;left:50%;top:0;transform:translateX(-50%);opacity:.9}
.qv21-hero-glow{width:420px;height:420px;right:18px;top:70px;opacity:.7}
.qv21-hero-art-wrap{position:relative;z-index:2;width:min(760px,100%);display:flex;justify-content:center}
.qv21-hero-art{display:block;width:100%;height:auto;filter:drop-shadow(0 34px 50px rgba(12,22,44,.14))}
.qv21-title-card{padding:32px 30px 28px;border-radius:28px;background:linear-gradient(180deg,#ffffff 0%, #f9fbff 100%);border:1px solid #e7eef8;box-shadow:0 18px 36px rgba(16,31,64,.06)}
.qv21-title-card h2{font-size:clamp(38px,3.6vw,58px);line-height:1.02}
.qv21-title-card--stack{min-height:270px}
.qv21-service-card{border-radius:24px;box-shadow:0 18px 30px rgba(16,31,64,.05)}
.qv21-service-icon{width:66px;height:66px;border-radius:20px;box-shadow:inset 0 0 0 1px #dbe7fa,0 18px 28px rgba(36,119,255,.12)}
.qv21-process-grid{border-radius:26px;box-shadow:0 18px 32px rgba(16,31,64,.05)}
.qv21-project-card{border-radius:24px}
.qv21-project-image{height:280px}
.qv21-contact-card{border-radius:24px}
.qv21-form-card{border-radius:24px}
body.home .qv-footer--clean{padding:24px 0 16px;background:#fff}
body.home .qv-footer-grid--clean{grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
body.home .qv-footer-bottom--clean{font-size:11px;color:#92a0b2}
@media (max-width:980px){body.home .qv-logo--header .qv-logo-image{max-height:58px;max-width:208px}.qv21-hero-grid{grid-template-columns:1fr;gap:34px}.qv21-device-stage--image{min-height:420px}.qv21-hero-art-wrap{width:min(680px,100%)}.qv21-circle{width:460px;height:460px}.qv21-title-card--stack{min-height:auto}}
@media (max-width:640px){body.home .qv-nav-wrap{height:76px}body.home .qv-logo--header .qv-logo-image{max-height:52px;max-width:188px}.qv21-hero{padding-top:26px}.qv21-hero-copy h1{font-size:50px;max-width:420px}.qv21-hero-copy p{font-size:16px}.qv21-device-stage--image{min-height:250px}.qv21-circle{width:280px;height:280px}.qv21-hero-glow{width:180px;height:180px;top:36px;right:16px}.qv21-hero-art-wrap{width:100%}.qv21-title-card{padding:22px 20px 20px;border-radius:22px}}


/* v2.1.4 hero image placement confirmation */
.qv21-device-stage--image{justify-content:flex-end;align-items:flex-start;padding-top:10px}
.qv21-hero-art-wrap{justify-content:flex-end;align-items:flex-start}
.qv21-hero-art{max-width:820px;margin-top:-8px}
@media (max-width:980px){.qv21-device-stage--image{justify-content:center;align-items:center;padding-top:0}.qv21-hero-art{max-width:680px;margin-top:0}}
@media (max-width:640px){.qv21-hero-art{max-width:100%}}


/* v2.1.5 transparent hero devices & better logo */
body.home .qv-logo{display:inline-flex;align-items:center}
body.home .qv-logo--header .qv-logo-image{max-height:58px;max-width:250px;filter:none}
body.home .qv-logo--footer .qv-logo-image{max-height:62px;max-width:300px;filter:none}
body.home .qv-site-header{background:rgba(255,255,255,.985);border-bottom:1px solid #edf2f9}
.qv21-hero-grid{grid-template-columns:minmax(0,580px) minmax(0,1fr);gap:74px;align-items:center}
.qv21-device-stage--image{min-height:585px;justify-content:flex-end;align-items:flex-start;padding-top:0}
.qv21-hero-art-wrap{justify-content:flex-end;align-items:flex-start;width:min(860px,100%)}
.qv21-hero-art{width:100%;max-width:860px;height:auto;margin-top:-16px;filter:drop-shadow(0 26px 40px rgba(12,22,44,.12))}
.qv21-circle{width:620px;height:620px;left:54%;top:-10px;transform:translateX(-50%);opacity:.8}
.qv21-hero-glow{display:none}
@media (max-width:980px){body.home .qv-logo--header .qv-logo-image{max-height:52px;max-width:220px} .qv21-hero-grid{grid-template-columns:1fr;gap:28px}.qv21-device-stage--image{min-height:360px;justify-content:center;align-items:center}.qv21-hero-art-wrap{width:min(720px,100%);justify-content:center}.qv21-hero-art{max-width:720px;margin-top:0}.qv21-circle{width:420px;height:420px;left:50%;top:0}}
@media (max-width:640px){body.home .qv-logo--header .qv-logo-image{max-height:46px;max-width:190px} body.home .qv-logo--footer .qv-logo-image{max-height:52px;max-width:250px}.qv21-device-stage--image{min-height:240px}.qv21-hero-art-wrap{width:100%}.qv21-hero-art{max-width:100%}.qv21-circle{width:260px;height:260px}}


/* v2.1.6 clean transparent hero refresh */
body.home .qv-logo--header .qv-logo-image{max-height:64px !important;max-width:270px !important;filter:none !important}
body.home .qv-logo--footer .qv-logo-image{max-height:64px !important;max-width:320px !important;filter:none !important}
body.home .qv-nav-wrap{height:88px}
.qv21-hero-grid{grid-template-columns:minmax(0,580px) minmax(0,1fr) !important;gap:82px !important;align-items:center !important}
.qv21-device-stage--image,.qv21-device-stage{min-height:600px !important;position:relative;justify-content:flex-end !important;align-items:center !important;padding-top:0 !important}
.qv21-device-stage:after,.qv21-device-stage:before,.qv21-device-stage--image:after,.qv21-device-stage--image:before{display:none !important;content:none !important}
.qv21-circle{width:620px !important;height:620px !important;left:54% !important;top:-6px !important;opacity:.82 !important}
.qv21-hero-glow{display:none !important}
.qv21-hero-art-wrap{position:relative;z-index:2;width:min(960px,100%) !important;display:flex;justify-content:flex-end !important;align-items:center !important}
.qv21-hero-art{display:block;width:100% !important;max-width:920px !important;height:auto !important;margin-top:-4px !important;filter:drop-shadow(0 26px 40px rgba(10,21,48,.12)) !important}
.qv21-hero-copy h1{max-width:620px}
.qv21-hero-copy p{max-width:535px}

@media (max-width:980px){
  body.home .qv-logo--header .qv-logo-image{max-height:56px !important;max-width:230px !important}
  .qv21-hero-grid{grid-template-columns:1fr !important;gap:28px !important}
  .qv21-device-stage--image,.qv21-device-stage{min-height:360px !important;justify-content:center !important}
  .qv21-circle{width:430px !important;height:430px !important;left:50% !important;top:0 !important}
  .qv21-hero-art-wrap{width:min(760px,100%) !important;justify-content:center !important}
  .qv21-hero-art{max-width:760px !important;margin-top:0 !important}
}
@media (max-width:640px){
  body.home .qv-nav-wrap{height:78px}
  body.home .qv-logo--header .qv-logo-image{max-height:48px !important;max-width:200px !important}
  .qv21-device-stage--image,.qv21-device-stage{min-height:235px !important}
  .qv21-circle{width:250px !important;height:250px !important;opacity:.7 !important}
  .qv21-hero-art-wrap{width:100% !important}
  .qv21-hero-art{max-width:100% !important}
}


/* v2.1.7 requested globe hero update */
.qv21-device-stage--image,.qv21-device-stage{min-height:620px !important;align-items:center !important;justify-content:flex-end !important}
.qv21-hero-art-wrap{width:min(980px,100%) !important;justify-content:flex-end !important}
.qv21-hero-art{max-width:880px !important;width:100% !important;height:auto !important;margin-top:0 !important;filter:drop-shadow(0 22px 34px rgba(9,24,58,.10)) !important}
.qv21-circle{display:none !important}
@media (max-width:980px){.qv21-device-stage--image,.qv21-device-stage{min-height:390px !important;justify-content:center !important}.qv21-hero-art-wrap{width:min(760px,100%) !important;justify-content:center !important}.qv21-hero-art{max-width:760px !important}.qv21-circle{display:none !important}}
@media (max-width:640px){.qv21-device-stage--image,.qv21-device-stage{min-height:250px !important}.qv21-hero-art{max-width:100% !important}}


/* =====================================================
   Qavirio v3.0 — Premium Studio Rebuild
   ===================================================== */
body.home{background:#eff2f4}
body.home .qv-main{background:#eff2f4}
body.home .qv-site-header{
  position:absolute;top:0;left:0;right:0;z-index:60;
  background:linear-gradient(180deg,rgba(3,16,36,.78),rgba(3,16,36,.15));
  border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(8px);
}
body.admin-bar.home .qv-site-header{top:32px}
body.home .qv-nav-wrap{height:94px}
body.home .qv-logo--header .qv-logo-image{max-height:58px !important;max-width:240px !important;filter:none !important}
body.home .qv-main-nav a{color:rgba(240,247,255,.92)}
body.home .qv-main-nav a:hover{color:#fff}
body.home .qv-lang-switcher a{color:#d7e9ff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}
body.home .qv-lang-switcher a.is-active{background:#fff;color:#0b1730;border-color:#fff}
body.home .qv-nav-contact{background:#fff;color:#0a1731;box-shadow:0 12px 24px rgba(4,13,31,.16)}
body.home .qv-menu-toggle span{background:#fff}

.qv30-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#92c9ff}
.qv30-kicker:before{content:'';width:8px;height:8px;border-radius:50%;background:#2ea8ff;box-shadow:0 0 0 4px rgba(46,168,255,.12)}
.qv30-kicker--light{color:#5d7290}
.qv30-kicker--light:before{background:#3c86ff;box-shadow:0 0 0 4px rgba(60,134,255,.08)}

.qv30-hero{position:relative;padding:150px 0 38px;background:linear-gradient(180deg,#061326 0%,#092348 48%,#071a36 100%);color:#fff;overflow:hidden}
.qv30-hero-bg,.qv30-hero-overlay{position:absolute;inset:0}
.qv30-hero-bg{background:radial-gradient(circle at 78% 34%,rgba(25,121,255,.18),transparent 25%),radial-gradient(circle at 22% 18%,rgba(17,86,190,.14),transparent 24%),linear-gradient(180deg,#031126 0%,#061b39 52%,#04142d 100%);opacity:1}
.qv30-hero-overlay{background:linear-gradient(90deg,rgba(3,16,36,.82) 0%, rgba(3,16,36,.38) 48%, rgba(3,16,36,.14) 100%)}
.qv30-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,620px) minmax(0,360px);gap:50px;align-items:center;min-height:470px}
.qv30-hero-copy h1{font-family:var(--qv-display);font-size:clamp(52px,6.8vw,78px);line-height:.93;letter-spacing:-.065em;margin:16px 0 20px;color:#fff;max-width:640px}
.qv30-hero-copy p{max-width:570px;margin:0;color:#d2deec;font-size:19px;line-height:1.8}
.qv30-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.qv30-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:16px 24px;min-height:56px;font-weight:800;border:1px solid transparent;transition:.22s}
.qv30-btn:hover{transform:translateY(-2px)}
.qv30-btn--gold{background:#f6c331;color:#07142a;box-shadow:0 18px 30px rgba(8,20,43,.18)}
.qv30-btn--ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.18);backdrop-filter:blur(8px)}
.qv30-btn--full{width:100%;background:#081b45;color:#fff;border:none;box-shadow:0 16px 28px rgba(8,27,69,.18)}
.qv30-hero-side{display:flex;justify-content:flex-end}
.qv30-hero-proof{width:min(360px,100%);display:grid;gap:14px;background:rgba(6,20,43,.42);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(14px);padding:24px;border-radius:28px;box-shadow:0 24px 54px rgba(3,12,26,.22)}
.qv30-proof-item{display:flex;align-items:center;gap:14px;padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.04)}
.qv30-proof-item span{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:#58c2ff;box-shadow:0 0 0 6px rgba(88,194,255,.12)}
.qv30-proof-item strong{font-size:15px;line-height:1.45;color:#fff}

.qv30-services-wrap{position:relative;z-index:3;margin-top:28px}
.qv30-services-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.qv30-service-card{position:relative;min-height:186px;padding:26px 24px;border-radius:24px;border:1px solid rgba(255,255,255,.08);overflow:hidden;box-shadow:0 24px 46px rgba(6,18,38,.18)}
.qv30-service-card h3{margin:16px 0 10px;font-family:var(--qv-display);font-size:30px;line-height:1.03;letter-spacing:-.04em;color:#fff}
.qv30-service-card p{margin:0;max-width:90%;font-size:15px;line-height:1.7;color:#d5e2f3}
.qv30-service-card--dark{grid-column:span 4;background:linear-gradient(180deg,#0c3052,#081c38)}
.qv30-service-card--blue{grid-column:span 4;background:linear-gradient(180deg,#1d6f95,#0d467a)}
.qv30-service-card--light{grid-column:span 4;grid-row:span 2;background:linear-gradient(180deg,#224f7f,#153861)}
.qv30-service-card--overlay{grid-column:span 4;background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}
.qv30-service-card--4{min-height:148px}
.qv30-service-card--5{min-height:148px}
.qv30-service-icon{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.14);display:grid;place-items:center}
.qv30-service-icon svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.qv30-service-arrow{position:absolute;right:20px;bottom:18px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:22px;color:#fff}
.qv30-service-card--light .qv30-service-icon,.qv30-service-card--overlay .qv30-service-icon{background:rgba(255,255,255,.12)}

.qv30-intro,.qv30-cases,.qv30-blog,.qv30-contact{padding:92px 0}
.qv30-intro{background:#f7f7f6}
.qv30-intro-inner{text-align:center;max-width:860px;margin:0 auto}
.qv30-intro-inner h2,.qv30-section-head h2{font-family:var(--qv-display);font-size:clamp(38px,4.2vw,56px);line-height:1.02;letter-spacing:-.055em;color:#0b1730;margin:18px 0 18px}
.qv30-intro-inner p{margin:0 auto;color:#5d6f83;font-size:18px;line-height:1.85;max-width:770px}
.qv30-intro-pill{margin:34px auto 0;width:min(360px,100%);display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:999px;background:#fff;border:1px solid #d7e1ea;box-shadow:0 16px 28px rgba(13,28,59,.08)}
.qv30-intro-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#c9e8ff,#7cbfff);color:#072048;font-weight:800;font-size:20px}
.qv30-intro-pill strong{display:block;font-size:16px;color:#0b1730}
.qv30-intro-pill small{display:block;color:#7b8798}
.qv30-intro-pill b{margin-left:auto;font-size:24px;color:#0b1730}
.qv30-trusted{margin-top:58px;padding-top:40px;border-top:1px solid #dde5ea}
.qv30-trusted-label{display:block;text-align:center;font-size:14px;color:#6e7d8f;margin-bottom:26px}
.qv30-logo-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;align-items:center}
.qv30-logo-strip span{display:flex;align-items:center;justify-content:center;min-height:42px;color:#6e7680;font-weight:700;letter-spacing:.02em;font-size:22px;opacity:.84;text-align:center}

.qv30-cases{background:#f0f3f5}
.qv30-section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:34px}
.qv30-inline-link{display:inline-flex;align-items:center;gap:8px;color:#0a1731;font-weight:700}
.qv30-inline-link span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dfe7ef}
.qv30-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.qv30-case-card{background:#fff;border:1px solid #dde6ee;border-radius:26px;overflow:hidden;box-shadow:0 18px 30px rgba(14,30,60,.06)}
.qv30-case-image{display:block;height:260px;padding:12px;background:linear-gradient(180deg,#ebf2f8,#f7fbff)}
.qv30-case-image img{width:100%;height:100%;object-fit:cover;border-radius:18px;display:block}
.qv30-case-body{padding:22px 22px 24px}
.qv30-case-tag{display:inline-flex;margin-bottom:10px;color:#778398;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.qv30-case-body h3{margin:0 0 10px;font-family:var(--qv-display);font-size:30px;line-height:1.02;letter-spacing:-.05em;color:#0b1730}
.qv30-case-body p{margin:0 0 16px;color:#677689;font-size:16px;line-height:1.68}
.qv30-case-link{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:#0e2f6e}

.qv30-blog{background:#dfe5e8}
.qv30-section-head--blog{align-items:start;gap:40px}
.qv30-blog-copy{max-width:340px}
.qv30-blog-copy p{color:#617286;font-size:17px;line-height:1.8;margin:0 0 20px}
.qv30-blog-grid{flex:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.qv30-blog-card{background:#f8fafa;border-radius:24px;overflow:hidden;border:1px solid #d2dde3;box-shadow:0 18px 28px rgba(14,30,60,.05)}
.qv30-blog-thumb{height:210px;position:relative;background:#15315a}
.qv30-blog-thumb:before,.qv30-blog-thumb:after{content:'';position:absolute;border-radius:22px}
.qv30-blog-thumb--1{background:radial-gradient(circle at 72% 22%, rgba(126,209,255,.34), transparent 22%),linear-gradient(135deg,#173a67,#0a2147)}
.qv30-blog-thumb--1:before{inset:24px auto 24px 26px;width:46%;background:linear-gradient(180deg,#8be0ff,#1b6eff);clip-path:polygon(0 82%,10% 68%,22% 74%,34% 50%,50% 58%,62% 22%,74% 34%,86% 12%,100% 0,100% 100%,0 100%)}
.qv30-blog-thumb--1:after{right:24px;top:28px;width:142px;height:142px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 10px rgba(255,255,255,.03)}
.qv30-blog-thumb--2{background:radial-gradient(circle at 20% 18%, rgba(255,226,134,.34), transparent 22%),linear-gradient(135deg,#4f7389,#d6c08f)}
.qv30-blog-thumb--2:before{left:34px;bottom:26px;width:168px;height:112px;background:#22456c;border-radius:18px 18px 14px 14px;box-shadow:0 16px 24px rgba(20,34,51,.16)}
.qv30-blog-thumb--2:after{right:38px;bottom:20px;width:96px;height:146px;background:#eff4f7;border-radius:18px;box-shadow:0 16px 22px rgba(20,34,51,.16)}
.qv30-blog-body{padding:22px}
.qv30-blog-body small{display:block;font-size:13px;color:#738192;margin-bottom:8px}
.qv30-blog-body h3{margin:0 0 10px;font-family:var(--qv-display);font-size:30px;line-height:1.05;letter-spacing:-.05em;color:#0b1730}
.qv30-blog-body p{margin:0 0 16px;color:#677689;font-size:16px;line-height:1.7}
.qv30-blog-body a{font-weight:700;color:#0e2f6e}

.qv30-contact{background:#07162e;color:#fff;padding-bottom:78px}
.qv30-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:28px;align-items:stretch}
.qv30-contact-copy,.qv30-contact-form{border-radius:28px}
.qv30-contact-copy{padding:42px 36px;background:radial-gradient(circle at 90% 10%, rgba(62,127,255,.26), transparent 26%),linear-gradient(180deg,#0c2348,#08172f);box-shadow:0 24px 42px rgba(3,12,26,.28)}
.qv30-contact-copy h2{font-family:var(--qv-display);font-size:clamp(40px,4.2vw,58px);line-height:.98;letter-spacing:-.055em;color:#fff;margin:16px 0 16px;max-width:470px}
.qv30-contact-copy p{margin:0 0 24px;color:#d0def2;font-size:18px;line-height:1.8;max-width:520px}
.qv30-contact-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.qv30-contact-copy li{position:relative;padding-left:24px;color:#e1ebfb}
.qv30-contact-copy li:before{content:'•';position:absolute;left:0;top:-3px;color:#5bc2ff;font-size:24px}
.qv30-contact-form{background:#fff;padding:24px;border:1px solid #dbe3eb;box-shadow:0 18px 30px rgba(13,28,59,.08)}
.qv30-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.qv30-contact-form input,.qv30-contact-form textarea{width:100%;border-radius:14px;border:1px solid #d4dce5;background:#fbfcfd;padding:15px 16px;font:inherit;color:#0b1730}
.qv30-contact-form textarea{min-height:168px;resize:vertical;margin-bottom:14px}
.qv30-contact-form input:focus,.qv30-contact-form textarea:focus{outline:none;border-color:#3b7bff;box-shadow:0 0 0 4px rgba(59,123,255,.10)}
.qv30-form-success{margin-bottom:12px;padding:14px 16px;border-radius:14px;background:#eef8ef;color:#1b5f2d;border:1px solid #cfe8d1}

body.home .qv-footer--clean{background:#07162e;padding:0 0 22px}
body.home .qv-footer-grid--clean{padding:0 0 28px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:start;gap:32px}
body.home .qv-footer-grid--clean:before{content:'';display:block;grid-column:1/-1;height:1px;background:rgba(255,255,255,.08);margin-bottom:6px}
body.home .qv-footer-nav-clean a,body.home .qv-footer-contact-clean a{color:#d2def0}
body.home .qv-footer-bottom--clean{border-top:1px solid rgba(255,255,255,.08);color:#91a3ba}
body.home .qv-footer-legal-inline a{color:#d2def0}
body.home .qv-logo--footer .qv-logo-image{max-height:68px !important;max-width:300px !important;filter:none !important}

@media (max-width:1100px){
  .qv30-hero-inner{grid-template-columns:1fr;gap:26px;min-height:auto}
  .qv30-hero-side{justify-content:flex-start}
  .qv30-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qv30-service-card,.qv30-service-card--dark,.qv30-service-card--blue,.qv30-service-card--light,.qv30-service-card--overlay{grid-column:auto;grid-row:auto;min-height:180px}
  .qv30-logo-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qv30-case-grid,.qv30-blog-grid,.qv30-contact-grid{grid-template-columns:1fr}
  .qv30-section-head,.qv30-section-head--blog{display:grid}
  body.home .qv-footer-grid--clean{grid-template-columns:1fr;gap:20px}
}
@media (max-width:820px){
  body.home .qv-site-header{background:rgba(4,18,40,.92)}
  body.home .qv-nav-wrap{height:80px}
  body.home .qv-logo--header .qv-logo-image{max-height:48px !important;max-width:190px !important}
  .qv30-hero{padding-top:118px}
  .qv30-hero-copy h1{font-size:50px}
  .qv30-hero-copy p{font-size:17px}
  .qv30-hero-proof{width:100%}
  .qv30-intro,.qv30-cases,.qv30-blog,.qv30-contact{padding:72px 0}
}
@media (max-width:640px){
  body.admin-bar.home .qv-site-header{top:46px}
  .qv30-hero{padding-top:108px;padding-bottom:26px}
  .qv30-hero-copy h1{font-size:42px}
  .qv30-hero-actions{display:grid;grid-template-columns:1fr}
  .qv30-btn{width:100%}
  .qv30-services-grid,.qv30-form-grid,.qv30-logo-strip{grid-template-columns:1fr}
  .qv30-service-card{min-height:auto}
  .qv30-intro-pill{width:100%}
  .qv30-case-image{height:220px}
  .qv30-blog-thumb{height:180px}
  .qv30-contact-copy,.qv30-contact-form{padding:22px}
  .qv30-blog-body h3,.qv30-case-body h3{font-size:26px}
}


/* Qavirio v3.0.1 — refinement round */
.qv-site-header{transition:background .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease}
body:not(.home) .qv-site-header{position:fixed;top:0;left:0;right:0;z-index:70;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(8,22,44,.08)}
body.admin-bar:not(.home) .qv-site-header{top:32px}
body:not(.home) .qv-main{padding-top:88px}
body.home .qv-site-header{position:fixed !important;top:0;left:0;right:0;z-index:80;background:linear-gradient(180deg,rgba(3,16,36,.82),rgba(3,16,36,.26));border-bottom:1px solid rgba(255,255,255,.10);box-shadow:none;overflow:hidden}
body.home .qv-site-header:before{content:'';position:absolute;inset:-40% auto auto -10%;width:42%;height:220%;background:radial-gradient(circle, rgba(89,196,255,.20) 0%, rgba(89,196,255,0) 68%);filter:blur(8px);animation:qvHeaderGlow 14s ease-in-out infinite;pointer-events:none}
body.home .qv-site-header:after{content:'';position:absolute;left:-10%;right:-10%;bottom:-1px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(97,203,255,.75),rgba(255,255,255,0));animation:qvHeaderLine 6.5s linear infinite;pointer-events:none}
body.home .qv-site-header.is-scrolled{background:linear-gradient(180deg,rgba(4,18,40,.96),rgba(4,18,40,.90));box-shadow:0 16px 28px rgba(4,13,31,.18);border-bottom-color:rgba(255,255,255,.08)}
body.admin-bar.home .qv-site-header{top:32px}
body.home .qv-nav-wrap{height:92px}
body.home .qv-logo--header .qv-logo-image{max-height:62px !important;max-width:244px !important}
body.home .qv-main-nav{position:relative;z-index:2}
body.home .qv-main-nav a{font-weight:700;letter-spacing:.01em}
body.home .qv-nav-contact{background:#f6c331 !important;color:#07142a !important;border:1px solid rgba(255,255,255,.18);box-shadow:0 16px 28px rgba(4,13,31,.18);font-weight:800}
body.home .qv-nav-contact:hover{background:#ffd65c !important;color:#07142a !important;transform:translateY(-1px)}
body.home .qv30-hero{padding-top:160px}
body.home .qv30-hero-bg{transform:scale(1.02);animation:qvHeroFloat 24s ease-in-out infinite}
body.home .qv30-hero-overlay{background:linear-gradient(90deg,rgba(3,16,36,.84) 0%, rgba(3,16,36,.42) 50%, rgba(3,16,36,.12) 100%),linear-gradient(180deg,rgba(104,209,255,.06),rgba(255,255,255,0) 30%)}
.qv30-hero-copy h1{max-width:690px}
.qv30-hero-copy p{max-width:610px}
.qv30-services-wrap{margin-top:34px}
.qv30-services-grid{gap:20px}
.qv30-service-card{border-radius:26px;box-shadow:0 22px 44px rgba(6,18,38,.20)}
.qv30-service-card h3{font-size:31px}
.qv30-service-card--light{background:linear-gradient(180deg,#345f8d,#173f69)}
.qv30-service-card--overlay{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.06));border-color:rgba(255,255,255,.09)}
.qv30-intro-pill{box-shadow:0 18px 34px rgba(13,28,59,.10)}
.qv30-case-card,.qv30-blog-card,.qv30-contact-form{box-shadow:0 18px 32px rgba(14,30,60,.08)}
.qv30-case-card:hover,.qv30-blog-card:hover{transform:translateY(-4px);transition:transform .22s ease, box-shadow .22s ease;box-shadow:0 24px 40px rgba(14,30,60,.10)}
.qv30-contact-copy,.qv30-contact-form{border-radius:30px}
body.home .qv-footer-grid--clean{padding-top:12px}
body.home .qv-footer-nav-clean a:hover,body.home .qv-footer-contact-clean a:hover,body.home .qv-footer-legal-inline a:hover{color:#fff}
@keyframes qvHeaderGlow{0%,100%{transform:translateX(0)}50%{transform:translateX(180%)} }
@keyframes qvHeaderLine{0%{transform:translateX(-18%)}100%{transform:translateX(18%)} }
@keyframes qvHeroFloat{0%,100%{transform:scale(1.02) translate3d(0,0,0)}50%{transform:scale(1.04) translate3d(0,-6px,0)} }
@media (max-width:820px){body.home .qv-site-header,body.home .qv-site-header.is-scrolled{background:rgba(4,18,40,.94)}body.home .qv-nav-contact{background:#f6c331 !important;color:#07142a !important}body.home .qv30-hero{padding-top:126px}}
@media (max-width:640px){body.admin-bar.home .qv-site-header,body.admin-bar:not(.home) .qv-site-header{top:46px}body:not(.home) .qv-main{padding-top:78px}body.home .qv-nav-wrap{height:78px}body.home .qv-logo--header .qv-logo-image{max-height:50px !important;max-width:196px !important}}


/* Qavirio v3.0.2 — hero motion layer */
.qv30-hero-motion{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.qv30-orb,.qv30-line{position:absolute;display:block;pointer-events:none}
.qv30-orb{border-radius:999px;background:radial-gradient(circle at 30% 30%, rgba(155,220,255,.26), rgba(155,220,255,.09) 42%, rgba(155,220,255,0) 72%);filter:blur(.2px);opacity:.7}
.qv30-orb--1{width:520px;height:108px;top:18px;left:-40px;animation:qvOrbFloatA 14s ease-in-out infinite}
.qv30-orb--2{width:460px;height:116px;top:34px;right:70px;animation:qvOrbFloatB 16s ease-in-out infinite}
.qv30-orb--3{width:340px;height:74px;top:82px;left:18%;opacity:.36;animation:qvOrbFloatC 18s ease-in-out infinite}
.qv30-line{height:2px;background:linear-gradient(90deg, rgba(126,217,255,0), rgba(126,217,255,.42), rgba(126,217,255,0));transform-origin:center;opacity:.48}
.qv30-line--1{width:68%;top:96px;left:-6%;transform:rotate(4deg);animation:qvLineSlideA 11s ease-in-out infinite}
.qv30-line--2{width:60%;top:420px;right:-8%;transform:rotate(-6deg);opacity:.28;animation:qvLineSlideB 14s ease-in-out infinite}
.qv30-line--3{width:74%;top:540px;left:-10%;transform:rotate(-2deg);opacity:.18;animation:qvLineSlideC 17s ease-in-out infinite}
.qv30-hero-inner,.qv30-services-wrap{position:relative;z-index:2}

@keyframes qvOrbFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(48px,10px,0)}}
@keyframes qvOrbFloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-40px,12px,0)}}
@keyframes qvOrbFloatC{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(32px,-8px,0)}}
@keyframes qvLineSlideA{0%,100%{transform:translate3d(0,0,0) rotate(4deg)}50%{transform:translate3d(38px,-8px,0) rotate(4deg)}}
@keyframes qvLineSlideB{0%,100%{transform:translate3d(0,0,0) rotate(-6deg)}50%{transform:translate3d(-46px,12px,0) rotate(-6deg)}}
@keyframes qvLineSlideC{0%,100%{transform:translate3d(0,0,0) rotate(-2deg)}50%{transform:translate3d(54px,-10px,0) rotate(-2deg)}}

@media (max-width:1100px){
  .qv30-orb--1{width:360px;height:88px;left:-50px}
  .qv30-orb--2{width:320px;height:92px;right:20px}
  .qv30-orb--3{width:240px;height:56px;left:22%}
  .qv30-line--1{width:82%;top:108px}
  .qv30-line--2{width:70%;top:360px}
  .qv30-line--3{display:none}
}
@media (max-width:640px){
  .qv30-hero-motion{opacity:.72}
  .qv30-orb--1{width:210px;height:56px;top:34px;left:-34px}
  .qv30-orb--2{width:190px;height:58px;top:56px;right:-10px}
  .qv30-orb--3{display:none}
  .qv30-line--1{width:90%;top:102px;left:-12%}
  .qv30-line--2{width:84%;top:300px;right:-18%}
}


/* Qavirio v3.0.3 — interaction and motion polish */
body.home .qv-lang-switcher a:hover{background:rgba(112,187,255,.18) !important;color:#fff !important;border-color:rgba(145,214,255,.58) !important}
body.home .qv-lang-switcher a.is-active:hover{background:#eaf2ff !important;color:#0c1832 !important;border-color:#d7e5ff !important}

.qv30-hero-motion{opacity:1}
.qv30-orb{opacity:.95}
.qv30-orb--1{width:620px;height:124px;top:18px;left:-55px}
.qv30-orb--2{width:520px;height:128px;top:42px;right:40px;opacity:.82}
.qv30-orb--3{width:420px;height:82px;top:86px;left:20%;opacity:.42}
.qv30-line{height:2px;opacity:.62}
.qv30-line--1{width:78%;top:92px}
.qv30-line--2{width:70%;top:360px;opacity:.34}
.qv30-line--3{width:84%;top:520px;opacity:.22}
.qv30-hero-motion:before,.qv30-hero-motion:after{content:'';position:absolute;border-radius:999px;pointer-events:none}
.qv30-hero-motion:before{width:540px;height:540px;right:8%;top:20%;background:radial-gradient(circle, rgba(91,194,255,.14) 0%, rgba(91,194,255,0) 70%);animation:qvPulseSphere 8s ease-in-out infinite}
.qv30-hero-motion:after{inset:0;background-image:radial-gradient(circle at 12% 24%, rgba(255,255,255,.22) 0 2px, transparent 3px),radial-gradient(circle at 22% 68%, rgba(255,255,255,.16) 0 1.5px, transparent 2.5px),radial-gradient(circle at 83% 22%, rgba(255,255,255,.26) 0 2px, transparent 3px),radial-gradient(circle at 71% 78%, rgba(255,255,255,.16) 0 1.5px, transparent 2.5px),radial-gradient(circle at 94% 40%, rgba(255,255,255,.14) 0 1.5px, transparent 2.5px);animation:qvTwinkle 5.8s ease-in-out infinite}
@keyframes qvPulseSphere{0%,100%{transform:scale(.94);opacity:.72}50%{transform:scale(1.06);opacity:1}}
@keyframes qvTwinkle{0%,100%{opacity:.55}50%{opacity:1}}

.qv30-proof-item{text-decoration:none;transition:transform .22s ease,background .22s ease,border-color .22s ease; border:1px solid rgba(255,255,255,.06)}
.qv30-proof-item:hover{transform:translateY(-2px);background:rgba(255,255,255,.08);border-color:rgba(112,194,255,.24)}
.qv30-service-card{text-decoration:none;transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.qv30-service-card:hover{transform:translateY(-6px);box-shadow:0 28px 56px rgba(6,18,38,.22);border-color:rgba(151,214,255,.22)}
.qv30-service-card:hover .qv30-service-arrow{background:rgba(255,255,255,.22);transform:translateX(2px)}

.qv30-logo-strip{overflow:hidden;position:relative;padding:6px 0}
.qv30-logo-strip:before,.qv30-logo-strip:after{content:'';position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.qv30-logo-strip:before{left:0;background:linear-gradient(90deg,#f7f7f6,rgba(247,247,246,0))}
.qv30-logo-strip:after{right:0;background:linear-gradient(270deg,#f7f7f6,rgba(247,247,246,0))}
.qv30-logo-track{display:flex;align-items:center;gap:44px;min-width:max-content;animation:qvLogoMarquee 24s linear infinite}
.qv30-logo-track span{min-width:160px}
.qv30-logo-strip:hover .qv30-logo-track{animation-play-state:paused}
@keyframes qvLogoMarquee{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}

.qv30-blog-grid{align-items:stretch}
.qv30-blog-card{overflow:hidden}
.qv30-blog-thumb{height:232px;background:#0f2343;display:block}
.qv30-blog-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.qv30-blog-thumb:before,.qv30-blog-thumb:after{display:none !important;content:none !important}

.qv-footer{position:relative;overflow:hidden}
.qv-footer-stars{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.qv-footer-stars span{position:absolute;top:-12px;width:2px;height:80px;background:linear-gradient(180deg, rgba(255,255,255,.7), rgba(255,255,255,0));opacity:.0;filter:drop-shadow(0 0 6px rgba(127,214,255,.35));transform:rotate(18deg)}
.qv-footer-stars span:nth-child(1){left:12%;animation:qvFallingStar 14s linear infinite 1s}
.qv-footer-stars span:nth-child(2){left:28%;animation:qvFallingStar 18s linear infinite 6s}
.qv-footer-stars span:nth-child(3){left:52%;animation:qvFallingStar 16s linear infinite 10s}
.qv-footer-stars span:nth-child(4){left:74%;animation:qvFallingStar 21s linear infinite 4s}
.qv-footer-stars span:nth-child(5){left:88%;animation:qvFallingStar 19s linear infinite 13s}
@keyframes qvFallingStar{0%{transform:translate3d(0,-120px,0) rotate(18deg);opacity:0}6%{opacity:.6}12%{transform:translate3d(90px,120px,0) rotate(18deg);opacity:0}100%{transform:translate3d(90px,120px,0) rotate(18deg);opacity:0}}

@media (max-width:1100px){.qv30-logo-track{gap:30px}.qv30-logo-track span{min-width:140px}}
@media (max-width:640px){.qv30-blog-thumb{height:190px}.qv30-logo-strip:before,.qv30-logo-strip:after{width:46px}.qv30-logo-track{gap:22px}}


/* Qavirio v3.0.4 — floating code motion */
.qv-code-motion{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.qv-code-shape,.qv-code-line,.qv-code-chip{position:absolute;display:block}
.qv-code-shape{border-radius:999px;background:linear-gradient(90deg, rgba(132,197,255,.18), rgba(132,197,255,.06));border:1px solid rgba(162,217,255,.18);backdrop-filter:blur(2px)}
.qv-code-shape--1{width:340px;height:74px;top:18px;left:-40px;animation:qvFloatA 16s ease-in-out infinite}
.qv-code-shape--2{width:240px;height:52px;top:36px;right:10%;animation:qvFloatB 18s ease-in-out infinite}
.qv-code-shape--3{width:190px;height:46px;bottom:22px;right:22%;animation:qvFloatA 20s ease-in-out infinite reverse}
.qv-code-line{height:1px;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(135,215,255,.38), rgba(255,255,255,0));opacity:.6}
.qv-code-line--1{width:72%;top:76px;left:14%;animation:qvLineDrift 18s ease-in-out infinite}
.qv-code-line--2{width:62%;top:48%;right:0;animation:qvLineDrift 15s ease-in-out infinite reverse}
.qv-code-chip{padding:10px 14px;border-radius:16px;border:1px solid rgba(135,215,255,.18);background:linear-gradient(180deg, rgba(8,25,53,.78), rgba(7,20,43,.54));box-shadow:0 18px 40px rgba(0,0,0,.12);color:#d9ecff;font-size:12px;font-weight:700;letter-spacing:.05em;white-space:nowrap}
.qv-code-chip:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#57bbff;box-shadow:0 0 0 4px rgba(87,187,255,.10);margin-right:10px;vertical-align:middle}
.qv-code-chip--1{top:84px;left:7%;animation:qvChipFloat 10s ease-in-out infinite}
.qv-code-chip--2{top:24%;right:8%;animation:qvChipFloat 12s ease-in-out infinite 1.5s}
.qv-code-chip--3{bottom:19%;left:9%;animation:qvChipFloat 11.5s ease-in-out infinite .8s}
.qv-code-chip--4{bottom:12%;right:10%;animation:qvChipFloat 13s ease-in-out infinite 2s}
.qv-code-chip--5{top:48%;left:38%;animation:qvChipFloat 9.5s ease-in-out infinite 1.2s}
.qv-code-chip--6{top:58%;right:28%;animation:qvChipFloat 14s ease-in-out infinite .4s}
@keyframes qvFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(24px,10px,0)}}
@keyframes qvFloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-18px,12px,0)}}
@keyframes qvLineDrift{0%,100%{transform:translateX(0);opacity:.35}50%{transform:translateX(12px);opacity:.75}}
@keyframes qvChipFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-10px,0) scale(1.03)}}

.qv30-hero,.qv30-contact-copy,.qv-page-hero,.qv-page-hero .qv-container{position:relative;overflow:hidden}
.qv30-hero > .qv-container,.qv30-services-wrap,.qv30-hero-motion,.qv30-contact-grid,.qv-page-hero > .qv-container,.qv-page-hero .qv-container > *,.qv30-contact-copy > *{position:relative;z-index:2}
.qv30-hero > .qv-code-motion--hero{position:absolute;inset:0;z-index:1}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{background:linear-gradient(180deg, rgba(10,26,56,.80), rgba(6,18,40,.56));color:#e8f3ff}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:18%;right:11%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{bottom:28%;right:20%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{top:36%;left:56%}

.qv30-contact-copy .qv-code-motion--contact{position:absolute;inset:0;opacity:.92}
.qv30-contact-copy .qv-code-chip{font-size:11px;padding:9px 12px;background:linear-gradient(180deg, rgba(17,44,86,.72), rgba(9,24,48,.42));color:#e6f4ff}
.qv30-contact-copy .qv-code-chip--1{top:16px;left:18px}
.qv30-contact-copy .qv-code-chip--2{top:22px;right:18px}
.qv30-contact-copy .qv-code-chip--3{bottom:22px;left:26px}
.qv30-contact-copy .qv-code-chip--4{bottom:32px;right:24px}
.qv30-contact-copy .qv-code-chip--5{top:48%;left:48%}
.qv30-contact-copy .qv-code-chip--6{display:none}
.qv30-contact-copy .qv-code-shape--1{width:260px;height:56px}
.qv30-contact-copy .qv-code-shape--2{width:170px;height:42px;right:12px}
.qv30-contact-copy .qv-code-shape--3{width:140px;height:36px;right:90px}
.qv30-contact-copy .qv-code-line--1{top:72px;width:86%;left:7%}
.qv30-contact-copy .qv-code-line--2{top:72%;width:72%;right:4%}

.qv-page-hero{padding:92px 0 34px;background:linear-gradient(180deg,#07162f 0%, #0a2245 100%)}
.qv-page-hero:before{content:'';position:absolute;inset:auto 0 0 0;height:120px;background:linear-gradient(180deg, rgba(255,255,255,0), rgba(6,17,36,.18));pointer-events:none}
.qv-page-hero .qv-container{position:relative;min-height:280px;padding:42px;background:linear-gradient(145deg,rgba(11,24,53,.84),rgba(6,13,30,.78));}
.qv-page-hero .qv-container > *{position:relative;z-index:2}
.qv-page-hero .qv-code-motion--page{z-index:1}
.qv-page-hero .qv-code-chip{background:linear-gradient(180deg, rgba(10,26,56,.74), rgba(6,18,40,.48));color:#eaf4ff}
.qv-page-hero .qv-code-chip--1{top:18px;left:18px}
.qv-page-hero .qv-code-chip--2{top:24px;right:18px}
.qv-page-hero .qv-code-chip--3{bottom:18px;left:22px}
.qv-page-hero .qv-code-chip--4{bottom:18px;right:18px}
.qv-page-hero .qv-code-chip--5{top:44%;left:54%}
.qv-page-hero .qv-code-chip--6{top:58%;left:16%}
.qv-page-hero .qv-code-shape--1{width:300px;height:60px;top:16px;left:-40px}
.qv-page-hero .qv-code-shape--2{width:240px;height:52px;top:12px;right:10%}
.qv-page-hero .qv-code-shape--3{width:170px;height:42px;bottom:16px;right:30%}
.qv-page-hero .qv-code-line--1{top:84px;width:90%;left:5%}
.qv-page-hero .qv-code-line--2{top:58%;width:78%;left:12%}

/* remove old footer falling-star animation */
.qv-footer-stars{display:none !important}

@media (max-width:980px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5,.qv30-hero > .qv-code-motion--hero .qv-code-chip--6,.qv-page-hero .qv-code-chip--5,.qv-page-hero .qv-code-chip--6{display:none}
}
@media (max-width:640px){
  .qv-code-chip{font-size:10px;padding:8px 10px;border-radius:14px}
  .qv-code-chip:before{width:7px;height:7px;margin-right:8px}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--3,.qv30-hero > .qv-code-motion--hero .qv-code-chip--4,.qv30-contact-copy .qv-code-chip--3,.qv30-contact-copy .qv-code-chip--4,.qv-page-hero .qv-code-chip--3,.qv-page-hero .qv-code-chip--4{display:none}
  .qv30-contact-copy .qv-code-chip--5{display:none}
  .qv30-contact-copy .qv-code-line--2,.qv-page-hero .qv-code-line--2{display:none}
  .qv-page-hero .qv-container{min-height:auto;padding:28px 20px}
}


/* Qavirio v3.0.5 — luxury code motion and mobile polish */
.qv-code-chip{opacity:.96;transition:opacity .46s ease, transform .46s ease, filter .46s ease;filter:drop-shadow(0 10px 20px rgba(0,0,0,.12))}
.qv-code-chip.is-hidden{opacity:0;transform:translateY(-10px) scale(.96);filter:blur(3px)}
.qv-code-chip:after{content:'';position:absolute;inset:-10px;border-radius:inherit;background:radial-gradient(circle, rgba(117,204,255,.12), transparent 65%);opacity:.0;transition:opacity .35s ease;pointer-events:none}
.qv-code-chip:not(.is-hidden):after{opacity:1}

.qv30-hero{overflow:hidden}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{animation:qvChipFloat 10s ease-in-out infinite, qvChipDrift 18s linear infinite}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:110px;left:3%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:92px;right:10%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{bottom:11%;left:6%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{bottom:8%;right:9%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{top:36%;left:58%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{top:58%;left:64%}
@keyframes qvChipDrift{0%,100%{translate:0 0}25%{translate:6px -4px}50%{translate:-5px 8px}75%{translate:8px 3px}}

.qv30-contact{position:relative;overflow:hidden;background:linear-gradient(180deg,#06162e 0%, #07162e 100%)}
.qv30-contact > .qv-code-motion--contact{position:absolute;inset:0;z-index:0;opacity:1}
.qv30-contact > .qv-container{position:relative;z-index:2}
.qv30-contact-copy{position:relative;background:radial-gradient(circle at 90% 10%, rgba(62,127,255,.16), transparent 26%),linear-gradient(180deg,rgba(12,35,72,.84),rgba(8,23,47,.88));backdrop-filter:blur(2px)}
.qv30-contact-copy .qv-code-motion--contact{display:none !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--1{width:280px;height:62px;top:22px;left:7%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--2{width:220px;height:58px;top:34px;right:6%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--3{width:240px;height:54px;bottom:22px;left:50%;transform:translateX(-50%)}
.qv30-contact > .qv-code-motion--contact .qv-code-line--1{top:76px;width:90%;left:5%}
.qv30-contact > .qv-code-motion--contact .qv-code-line--2{bottom:70px;top:auto;width:82%;left:9%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip{background:linear-gradient(180deg, rgba(9,28,59,.76), rgba(7,18,37,.46));color:#ebf6ff;animation:qvChipFloat 10s ease-in-out infinite, qvChipDrift 18s linear infinite}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--1{top:24px;left:18%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--2{top:34px;right:16%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--3{bottom:34px;left:14%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--4{bottom:28px;right:14%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--5{top:46%;left:6%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--6{top:56%;right:8%}

.qv-page-hero .qv-container{border-radius:30px;box-shadow:0 26px 56px rgba(0,0,0,.24)}
.qv-page-hero h1{max-width:820px}
.qv-page-hero p{max-width:760px}
.qv-section .qv-card,.qv-section .qv-project,.qv-section .qv-feature-list div{box-shadow:0 16px 30px rgba(12,24,48,.09)}
.qv-section .qv-card:hover,.qv-section .qv-project:hover,.qv-section .qv-feature-list div:hover{box-shadow:0 24px 52px rgba(12,24,48,.14)}
.qv-project-grid--portfolio{gap:24px}
.qv-project{border:1px solid rgba(141,171,214,.16)}
.qv-project-title{font-size:24px}
.qv-project p{line-height:1.65}

@media (max-width:940px){
  body.qv-menu-open{overflow:hidden}
  .qv-main-nav{position:fixed !important;left:12px !important;right:12px !important;top:84px !important;display:flex !important;flex-direction:column;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.98);transition:opacity .2s ease, transform .2s ease, visibility .2s ease;background:linear-gradient(180deg, rgba(7,16,33,.98), rgba(5,12,27,.98)) !important;border:1px solid rgba(130,170,230,.18) !important;backdrop-filter:blur(18px);box-shadow:0 24px 64px rgba(0,0,0,.42),0 0 0 1px rgba(0,212,255,.06);padding:12px !important;border-radius:22px}
  .qv-main-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
  .qv-main-nav a{color:#eff6ff !important;padding:14px 14px !important;border-radius:14px}
  .qv-main-nav a:hover{background:rgba(255,255,255,.06) !important;color:#fff !important}
  .qv-lang-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px}
  .qv-lang-switcher a{text-align:center;border:1px solid rgba(130,170,230,.18);border-radius:12px;padding:10px 0;background:rgba(255,255,255,.02)}
  .qv-nav-contact{display:block;text-align:center;margin-top:8px;padding:12px 16px;border-radius:14px;background:linear-gradient(135deg,#18366d,#0c1e40) !important;color:#fff !important}
}
@media (max-width:640px){
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--5,.qv30-contact > .qv-code-motion--contact .qv-code-chip--6,.qv30-hero > .qv-code-motion--hero .qv-code-chip--5,.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none}
  .qv30-contact > .qv-code-motion--contact .qv-code-line--2{display:none}
  .qv30-contact-copy,.qv30-contact-form{border-radius:24px}
  .qv-page-hero .qv-container{border-radius:24px}
  .qv-project-title{font-size:22px}
}


/* Qavirio v3.0.6 — global header polish, circular motion, project wow */
.qv-site-header{position:sticky;top:0;isolation:isolate;overflow:hidden;background:linear-gradient(180deg, rgba(5,17,38,.94), rgba(7,22,46,.82));backdrop-filter:blur(18px);border-bottom:1px solid rgba(130,179,238,.12);box-shadow:0 10px 30px rgba(0,0,0,.12);z-index:9999}
.qv-site-header:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg, rgba(65,133,255,.06), rgba(0,0,0,0) 38%, rgba(99,223,255,.05));pointer-events:none;z-index:0}
.qv-site-header.is-scrolled{box-shadow:0 18px 42px rgba(0,0,0,.18);border-bottom-color:rgba(130,179,238,.18)}
.qv-site-header > .qv-code-motion--header{position:absolute;inset:0;z-index:0;opacity:.98}
.qv-site-header > .qv-code-motion--header .qv-code-shape{border-radius:50%;background:radial-gradient(circle, rgba(138,213,255,.18), rgba(138,213,255,.05) 58%, rgba(138,213,255,0) 72%);border:1px solid rgba(167,223,255,.14)}
.qv-site-header > .qv-code-motion--header .qv-code-shape--1{width:120px;height:120px;top:-26px;left:10%}
.qv-site-header > .qv-code-motion--header .qv-code-shape--2{width:92px;height:92px;top:4px;right:14%}
.qv-site-header > .qv-code-motion--header .qv-code-shape--3{width:64px;height:64px;top:18px;left:56%}
.qv-site-header > .qv-code-motion--header .qv-code-line--1{top:22px;width:40%;left:28%;opacity:.24}
.qv-site-header > .qv-code-motion--header .qv-code-line--2{top:44px;width:32%;left:46%;opacity:.18}
.qv-site-header > .qv-code-motion--header .qv-code-chip{padding:7px 11px;font-size:11px;background:linear-gradient(180deg, rgba(8,25,53,.58), rgba(8,25,53,.24));border-color:rgba(136,209,255,.10);color:#edf7ff;box-shadow:none;animation:qvChipFloat 9s ease-in-out infinite, qvChipDrift 20s linear infinite}
.qv-site-header > .qv-code-motion--header .qv-code-chip:before{width:6px;height:6px;margin-right:7px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--1{left:18%;top:10px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--2{left:41%;top:8px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--3{left:63%;top:10px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--4{left:76%;top:28px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--5{left:30%;top:30px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--6{left:52%;top:32px}
.qv-site-header .qv-nav-wrap{position:relative;z-index:2}

/* stronger global desktop navigation */
.qv-main-nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:700;color:#eef6ff}
.qv-main-nav a{color:rgba(236,244,255,.94)}
.qv-main-nav a:hover{color:#fff}
.qv-main-nav > a:after{background:linear-gradient(90deg,#62d7ff,transparent)}
.qv-lang-switcher a{background:rgba(255,255,255,.04);border-color:rgba(146,186,240,.14);color:#eef6ff}
.qv-lang-switcher a:hover{background:rgba(255,255,255,.10) !important;color:#fff !important;border-color:rgba(146,186,240,.22) !important}
.qv-lang-switcher a.is-active{background:#f1f5fb;color:#0d1935;border-color:#dbe7fb}
.qv-nav-contact{background:linear-gradient(135deg,#0e2552,#17356f);color:#fff;box-shadow:0 10px 26px rgba(8,18,40,.18)}
.qv-nav-contact:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(8,18,40,.22)}

/* circular motion in hero/contact/page sections */
.qv30-hero > .qv-code-motion--hero .qv-code-shape,
.qv30-contact > .qv-code-motion--contact .qv-code-shape,
.qv-page-hero .qv-code-motion--page .qv-code-shape{border-radius:50%;background:radial-gradient(circle, rgba(138,213,255,.16), rgba(138,213,255,.06) 58%, rgba(138,213,255,0) 74%);border:1px solid rgba(172,227,255,.14)}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--1{width:170px;height:170px;top:56px;left:6%}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--2{width:118px;height:118px;top:100px;right:11%}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--3{width:92px;height:92px;top:54%;left:48%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:104px;left:4%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:18%;right:7%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:42%;left:40%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:66%;right:16%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:13%;left:14%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{bottom:18%;left:62%}
.qv30-hero > .qv-code-motion--hero .qv-code-line--1{top:26%;width:66%;left:20%}
.qv30-hero > .qv-code-motion--hero .qv-code-line--2{top:58%;width:58%;left:14%}

.qv30-contact > .qv-code-motion--contact .qv-code-shape--1{width:150px;height:150px;top:18%;left:8%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--2{width:104px;height:104px;top:10%;right:12%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--3{width:88px;height:88px;top:58%;left:54%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--1{top:18%;left:8%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--2{top:14%;right:10%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--3{top:44%;left:46%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--4{bottom:14%;right:12%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--5{bottom:12%;left:14%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--6{top:62%;right:26%}
.qv30-contact > .qv-code-motion--contact .qv-code-line--1{top:24%;width:74%;left:13%}
.qv30-contact > .qv-code-motion--contact .qv-code-line--2{top:66%;width:70%;left:16%}

.qv-page-hero .qv-code-motion--page .qv-code-shape--1{width:140px;height:140px;top:18px;left:10%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--2{width:108px;height:108px;top:22px;right:8%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--3{width:84px;height:84px;top:56%;left:52%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--1{top:18px;left:6%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--2{top:20px;right:8%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--3{top:44%;left:48%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--4{bottom:22px;right:12%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--5{bottom:18px;left:12%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--6{top:58%;left:14%}
.qv-page-hero .qv-code-motion--page .qv-code-line--1{top:30%;width:78%;left:12%}
.qv-page-hero .qv-code-motion--page .qv-code-line--2{top:64%;width:68%;left:18%}

/* premium footer */
.qv-footer{background:linear-gradient(180deg,#071326 0%, #06111f 100%);border-top:1px solid rgba(132,176,232,.12)}
.qv-footer:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 18% 14%, rgba(90,156,255,.12), transparent 26%),radial-gradient(circle at 88% 12%, rgba(0,212,255,.08), transparent 22%);pointer-events:none}
.qv-footer-grid,.qv-footer-bottom{position:relative;z-index:2}
.qv-footer-col{background:linear-gradient(180deg, rgba(10,23,45,.78), rgba(7,16,31,.58));border:1px solid rgba(255,255,255,.04);box-shadow:0 14px 32px rgba(0,0,0,.14)}
.qv-footer-brand .qv-logo{margin-bottom:16px}
.qv-footer-bottom{padding-top:24px;margin-top:24px;border-top:1px solid rgba(140,178,232,.10)}

/* project wow */
.page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:first-child{grid-column:span 2;min-height:420px;background:linear-gradient(180deg, rgba(9,29,63,.96), rgba(6,14,31,.98));box-shadow:0 30px 90px rgba(0,0,0,.22),0 0 0 1px rgba(0,212,255,.06)}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:first-child .qv-project-preview{height:220px}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:first-child .qv-project-title{font-size:28px}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:nth-child(2){transform:translateY(26px)}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:nth-child(3){transform:translateY(12px)}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:hover{transform:translateY(-8px)}
.page-template-page-projects .qv-project-grid--portfolio .qv-project:first-child:hover{transform:translateY(-10px)}

/* mobile pixel polish */
@media (max-width:940px){
  .qv-site-header{min-height:78px}
  .qv-nav-wrap{height:78px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
  .qv-main-nav{display:flex !important;position:fixed !important;left:12px !important;right:12px !important;top:84px !important;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.98);transition:opacity .22s ease, transform .22s ease, visibility .22s ease;max-height:calc(100vh - 96px);overflow:auto;padding:12px !important;border-radius:22px;gap:6px;background:linear-gradient(180deg, rgba(7,17,34,.98), rgba(5,12,27,.98)) !important;border:1px solid rgba(130,179,238,.18) !important;box-shadow:0 26px 60px rgba(0,0,0,.46),0 0 0 1px rgba(99,214,255,.05)}
  .qv-main-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
  .qv-main-nav a,.qv-main-nav .qv-nav-contact{width:100%}
  .qv-main-nav a{padding:14px 15px !important;border-radius:14px;display:flex;justify-content:space-between;align-items:center}
  .qv-main-nav a:after{display:none !important}
  .qv-main-nav a:hover{background:rgba(255,255,255,.05) !important;transform:none}
  .qv-mobile-nav-top{display:flex !important;flex-direction:column;gap:4px;padding:10px 12px 12px;margin-bottom:4px;border-bottom:1px solid rgba(140,178,232,.10);color:#dce8f8}
  .qv-menu-toggle{width:52px;height:52px;justify-self:end}
  .qv-site-header > .qv-code-motion--header .qv-code-chip--3,.qv-site-header > .qv-code-motion--header .qv-code-chip--4,.qv-site-header > .qv-code-motion--header .qv-code-chip--5,.qv-site-header > .qv-code-motion--header .qv-code-chip--6,.qv-site-header > .qv-code-motion--header .qv-code-line--2{display:none}
  .qv21-project-grid,.qv21-services-grid,.qv21-process-grid,.qv21-contact-grid{gap:18px}
  .page-template-page-projects .qv-project-grid--portfolio .qv-project:first-child,.page-template-page-projects .qv-project-grid--portfolio .qv-project:nth-child(2),.page-template-page-projects .qv-project-grid--portfolio .qv-project:nth-child(3){grid-column:auto;transform:none}
}
@media (max-width:640px){
  .qv-container{width:min(100% - 22px, 1280px)}
  .qv-site-header{min-height:74px}
  .qv-nav-wrap{height:74px}
  .qv-main-nav{left:10px !important;right:10px !important;top:78px !important;max-height:calc(100vh - 88px)}
  .qv-lang-switcher{grid-template-columns:repeat(3,1fr)}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,.qv30-hero > .qv-code-motion--hero .qv-code-chip--6,.qv30-contact > .qv-code-motion--contact .qv-code-chip--4,.qv30-contact > .qv-code-motion--contact .qv-code-chip--6,.qv-page-hero .qv-code-motion--page .qv-code-chip--4,.qv-page-hero .qv-code-motion--page .qv-code-chip--6{display:none}
  .qv30-hero > .qv-code-motion--hero .qv-code-shape--1,.qv30-contact > .qv-code-motion--contact .qv-code-shape--1,.qv-page-hero .qv-code-motion--page .qv-code-shape--1{width:100px;height:100px}
  .qv30-hero > .qv-code-motion--hero .qv-code-shape--2,.qv30-contact > .qv-code-motion--contact .qv-code-shape--2,.qv-page-hero .qv-code-motion--page .qv-code-shape--2{width:72px;height:72px}
}


/* Qavirio v3.0.7 — fix floating code popup placement */
.qv-code-chip{max-width:148px;overflow:hidden;text-overflow:ellipsis;line-height:1.1;z-index:1;will-change:transform,opacity}
@keyframes qvChipDriftSafe{0%,100%{transform:translate3d(0,0,0)}25%{transform:translate3d(3px,-2px,0)}50%{transform:translate3d(-3px,4px,0)}75%{transform:translate3d(4px,1px,0)}}
.qv-site-header > .qv-code-motion--header .qv-code-chip,
.qv30-hero > .qv-code-motion--hero .qv-code-chip,
.qv30-contact > .qv-code-motion--contact .qv-code-chip,
.qv-page-hero .qv-code-motion--page .qv-code-chip{animation:qvChipFloat 9.5s ease-in-out infinite, qvChipDriftSafe 16s linear infinite}

/* safer header chip positions */
.qv-site-header > .qv-code-motion--header .qv-code-chip{max-width:118px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--1{left:16%;top:11px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--2{left:38%;top:9px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--3{left:58%;top:11px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--4{left:72%;top:27px}
.qv-site-header > .qv-code-motion--header .qv-code-chip--5{display:none}
.qv-site-header > .qv-code-motion--header .qv-code-chip--6{display:none}

/* safer hero chip positions so none are cut off */
.qv30-hero > .qv-code-motion--hero .qv-code-chip{max-width:136px}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:110px;left:8%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:100px;left:72%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:38%;left:44%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:66%;left:75%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:13%;left:16%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{bottom:16%;left:58%}

/* safer contact chip positions */
.qv30-contact > .qv-code-motion--contact .qv-code-chip{max-width:132px}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--1{top:18%;left:10%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--2{top:14%;left:72%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--3{top:44%;left:48%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--4{bottom:14%;left:76%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--5{bottom:12%;left:16%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--6{top:62%;left:60%}

/* safer inner-page chip positions */
.qv-page-hero .qv-code-motion--page .qv-code-chip{max-width:130px}
.qv-page-hero .qv-code-motion--page .qv-code-chip--1{top:20px;left:9%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--2{top:20px;left:72%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--3{top:44%;left:48%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--4{bottom:22px;left:74%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--5{bottom:18px;left:14%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--6{top:58%;left:18%}

@media (max-width:1200px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2{left:68%}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4{left:70%}
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--2{left:68%}
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--4{left:70%}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--2{left:68%}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--4{left:70%}
}


/* Qavirio v3.0.8 — header cleanup and safer floating code placement */
.qv-site-header > .qv-code-motion--header{display:none !important}
.qv-site-header{background:linear-gradient(180deg, rgba(5,17,38,.96), rgba(7,22,46,.88)) !important}
.qv-site-header .qv-nav-wrap{position:relative;z-index:3}

/* make global fixed header identical in feel across all pages */
body:not(.home) .qv-site-header{position:sticky;top:0;backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(0,0,0,.12);border-bottom:1px solid rgba(130,179,238,.12)}
body:not(.home) .qv-main{padding-top:0}

/* floating code chips corrected so none look detached */
.qv-code-chip{max-width:120px;padding:8px 11px;border-radius:14px;font-size:11px;letter-spacing:.03em}
.qv-code-chip:before{width:6px;height:6px;margin-right:7px}
.qv30-hero > .qv-code-motion--hero .qv-code-chip,
.qv30-contact > .qv-code-motion--contact .qv-code-chip,
.qv-page-hero .qv-code-motion--page .qv-code-chip{animation:qvChipFloat 8.5s ease-in-out infinite, qvChipDriftSafe 15s linear infinite}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5,
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6,
.qv30-contact > .qv-code-motion--contact .qv-code-chip--5,
.qv30-contact > .qv-code-motion--contact .qv-code-chip--6,
.qv-page-hero .qv-code-motion--page .qv-code-chip--5,
.qv-page-hero .qv-code-motion--page .qv-code-chip--6{display:none !important}

/* hero safer positions */
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:116px;left:6%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:108px;left:76%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:42%;left:46%}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:69%;left:80%}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--1{left:10%;top:70px}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--2{right:8%;top:88px}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--3{left:56%;top:50%}

/* contact safer positions */
.qv30-contact > .qv-code-motion--contact .qv-code-chip--1{top:18%;left:8%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--2{top:18%;left:78%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--3{top:48%;left:50%}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--4{bottom:14%;left:80%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--1{left:9%;top:21%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--2{right:8%;top:16%}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--3{left:58%;top:56%}

/* inner page hero safer positions */
.qv-page-hero .qv-code-motion--page .qv-code-chip--1{top:22px;left:8%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--2{top:22px;left:74%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--3{top:50%;left:50%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--4{bottom:18px;left:80%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--1{left:12%;top:18px}
.qv-page-hero .qv-code-motion--page .qv-code-shape--2{right:7%;top:18px}
.qv-page-hero .qv-code-motion--page .qv-code-shape--3{left:58%;top:55%}

/* keep chips inside on smaller desktops */
@media (max-width:1280px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2{left:72%}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4{left:76%}
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--2{left:74%}
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--4{left:76%}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--2{left:70%}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--4{left:76%}
}
@media (max-width:1024px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--2,
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--4,
  .qv-page-hero .qv-code-motion--page .qv-code-chip--2,
  .qv-page-hero .qv-code-motion--page .qv-code-chip--4{display:none !important}
}


/* Qavirio v3.0.9 — definitive header + code popup correction */
/* Remove loose floating code popups completely: keep only premium circles/lines as background motion. */
.qv-code-chip{display:none !important;visibility:hidden !important;opacity:0 !important}
.qv-code-motion{overflow:hidden !important}
.qv-code-shape{border-radius:50% !important;background:radial-gradient(circle, rgba(112,198,255,.16), rgba(112,198,255,.055) 54%, rgba(112,198,255,0) 76%) !important;border:1px solid rgba(161,223,255,.13) !important;box-shadow:0 0 42px rgba(74,178,255,.07) !important}
.qv-code-line{height:1px !important;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(126,217,255,.30),rgba(255,255,255,0)) !important;opacity:.35 !important}

/* Make header identical and fixed across homepage and all pages. */
.qv-site-header,
body.home .qv-site-header,
body:not(.home) .qv-site-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:9999 !important;
  background:linear-gradient(180deg,rgba(5,17,38,.96),rgba(7,22,46,.92)) !important;
  border-bottom:1px solid rgba(130,179,238,.13) !important;
  backdrop-filter:blur(18px) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.15) !important;
  overflow:hidden !important;
}
body.admin-bar .qv-site-header,
body.admin-bar.home .qv-site-header,
body.admin-bar:not(.home) .qv-site-header{top:32px !important}
.qv-site-header:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,150,255,.08),rgba(0,0,0,0) 38%,rgba(99,223,255,.055));pointer-events:none;z-index:0}
.qv-site-header:after{content:'';position:absolute;left:-12%;right:-12%;bottom:0;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(96,212,255,.68),rgba(255,255,255,0));animation:qvHeaderLine 7s linear infinite;pointer-events:none;z-index:0}
.qv-site-header .qv-nav-wrap{height:88px !important;position:relative !important;z-index:2 !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:22px !important}
.qv-logo--header .qv-logo-image,
body.home .qv-logo--header .qv-logo-image{max-height:58px !important;max-width:230px !important;filter:none !important}
.qv-main-nav{display:flex !important;align-items:center !important;gap:22px !important;font-size:13px !important;font-weight:700 !important;color:#eef6ff !important}
.qv-main-nav a{color:rgba(236,244,255,.94) !important;text-decoration:none !important}
.qv-main-nav a:hover{color:#fff !important}
.qv-main-nav > a:after{background:linear-gradient(90deg,#62d7ff,transparent) !important}
.qv-lang-switcher a{background:rgba(255,255,255,.04) !important;border-color:rgba(146,186,240,.14) !important;color:#eef6ff !important}
.qv-lang-switcher a:hover{background:rgba(255,255,255,.10) !important;color:#fff !important;border-color:rgba(146,186,240,.25) !important}
.qv-lang-switcher a.is-active{background:#f1f5fb !important;color:#0d1935 !important;border-color:#dbe7fb !important}
.qv-nav-contact,
body.home .qv-nav-contact{background:linear-gradient(135deg,#f6c331,#ffd761) !important;color:#07142a !important;border:0 !important;box-shadow:0 12px 26px rgba(0,0,0,.22) !important;font-weight:800 !important}
.qv-nav-contact:hover,
body.home .qv-nav-contact:hover{background:#ffe084 !important;color:#07142a !important;transform:translateY(-1px) !important}
.qv-mobile-nav-top{display:none}
.qv-site-header > .qv-code-motion--header{display:none !important}
body:not(.home) .qv-main{padding-top:88px !important;background:#071326 !important}
body.home .qv30-hero{padding-top:150px !important}

/* Inner pages now follow the same premium dark visual language. */
.qv-page-hero{position:relative !important;overflow:hidden !important;padding:82px 0 60px !important;background:linear-gradient(180deg,#071326 0%,#092247 60%,#071326 100%) !important;color:#fff !important}
.qv-page-hero:after{content:'';position:absolute;inset:0;background:url('../img/hero/qavirio-v3-landscape.svg') center/cover no-repeat;opacity:.32;pointer-events:none}
.qv-page-hero .qv-container{position:relative !important;z-index:2 !important;min-height:280px !important;border-radius:30px !important;padding:44px !important;background:linear-gradient(145deg,rgba(9,22,50,.88),rgba(6,14,32,.82)) !important;border:1px solid rgba(150,195,255,.12) !important;box-shadow:0 28px 70px rgba(0,0,0,.25) !important;overflow:hidden !important}
.qv-page-hero .qv-container > *{position:relative;z-index:2}
.qv-page-hero .qv-kicker{color:#63d7ff !important}
.qv-page-hero h1{color:#fff !important;max-width:920px !important}
.qv-page-hero p{color:#d5e5f4 !important;max-width:760px !important}
.qv-page-hero .qv-code-motion--page{z-index:1 !important}
.qv-page-hero .qv-code-shape--1{width:150px !important;height:150px !important;left:10% !important;top:28px !important}
.qv-page-hero .qv-code-shape--2{width:110px !important;height:110px !important;right:10% !important;top:42px !important}
.qv-page-hero .qv-code-shape--3{width:86px !important;height:86px !important;left:60% !important;top:58% !important}
.qv-page-hero .qv-code-line--1{top:34% !important;width:76% !important;left:12% !important}
.qv-page-hero .qv-code-line--2{top:66% !important;width:70% !important;left:16% !important}

/* Homepage hero/contact: only circles and clean lines, no loose text popups. */
.qv30-hero > .qv-code-motion--hero .qv-code-shape--1{width:190px !important;height:190px !important;top:82px !important;left:8% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--2{width:130px !important;height:130px !important;top:106px !important;right:10% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--3{width:96px !important;height:96px !important;top:54% !important;left:55% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-line--1{top:28% !important;width:68% !important;left:17% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-line--2{top:58% !important;width:58% !important;left:18% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--1{width:160px !important;height:160px !important;top:18% !important;left:8% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--2{width:120px !important;height:120px !important;top:14% !important;right:10% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--3{width:90px !important;height:90px !important;top:60% !important;left:58% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-line--1{top:26% !important;width:74% !important;left:13% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-line--2{top:68% !important;width:70% !important;left:16% !important}

/* Project page and cards brought into the current theme style. */
.page-template-page-projects .qv-section{background:#071326 !important;padding:70px 0 92px !important}
.page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:26px !important;align-items:stretch !important}
.page-template-page-projects .qv-project{background:linear-gradient(180deg,rgba(10,28,62,.96),rgba(6,15,33,.98)) !important;border:1px solid rgba(150,195,255,.12) !important;border-radius:28px !important;box-shadow:0 26px 70px rgba(0,0,0,.24) !important;color:#fff !important;padding:22px !important;transform:none !important;transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important}
.page-template-page-projects .qv-project:hover{transform:translateY(-8px) !important;border-color:rgba(99,215,255,.34) !important;box-shadow:0 34px 90px rgba(0,0,0,.30) !important}
.page-template-page-projects .qv-project:first-child{grid-column:span 2 !important;min-height:420px !important;background:linear-gradient(180deg,rgba(10,33,70,.98),rgba(6,15,33,.99)) !important}
.page-template-page-projects .qv-project-preview{border-radius:20px !important;overflow:hidden !important;background:#061225 !important}
.page-template-page-projects .qv-project-title{color:#fff !important;font-size:25px !important}
.page-template-page-projects .qv-project p{color:#cddcec !important;line-height:1.65 !important}
.page-template-page-projects .qv-project-kicker{color:#63d7ff !important}
.page-template-page-projects .qv-project em{color:#64d8ff !important}

/* Footer consistent premium finish. */
.qv-footer{position:relative !important;overflow:hidden !important;background:linear-gradient(180deg,#071326 0%,#06111f 100%) !important;border-top:1px solid rgba(132,176,232,.12) !important;color:#d5e2f2 !important}
.qv-footer:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 18% 14%,rgba(90,156,255,.12),transparent 26%),radial-gradient(circle at 88% 12%,rgba(0,212,255,.08),transparent 22%);pointer-events:none}
.qv-footer-grid,.qv-footer-bottom{position:relative !important;z-index:2 !important}
.qv-footer-col{background:linear-gradient(180deg,rgba(10,23,45,.78),rgba(7,16,31,.58)) !important;border:1px solid rgba(255,255,255,.05) !important;box-shadow:0 14px 32px rgba(0,0,0,.16) !important;border-radius:26px !important}
.qv-footer a{color:#d8e7f7 !important}.qv-footer a:hover{color:#fff !important}
.qv-footer-bottom{border-top:1px solid rgba(140,178,232,.10) !important;color:#9fb2c9 !important}
.qv-logo--footer .qv-logo-image{max-height:66px !important;max-width:300px !important;filter:none !important}

/* Mobile menu pixel fix. */
@media (max-width:940px){
  body.admin-bar .qv-site-header{top:32px !important}
  .qv-site-header .qv-nav-wrap{height:78px !important;display:grid !important;grid-template-columns:auto 1fr auto !important;gap:10px !important}
  .qv-menu-toggle{width:52px !important;height:52px !important;justify-self:end !important}
  .qv-main-nav{position:fixed !important;left:12px !important;right:12px !important;top:86px !important;display:flex !important;flex-direction:column !important;gap:7px !important;opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(-10px) scale(.98) !important;max-height:calc(100vh - 98px) !important;overflow:auto !important;padding:12px !important;border-radius:22px !important;background:linear-gradient(180deg,rgba(7,17,34,.98),rgba(5,12,27,.98)) !important;border:1px solid rgba(130,179,238,.18) !important;box-shadow:0 26px 60px rgba(0,0,0,.46),0 0 0 1px rgba(99,214,255,.05) !important;transition:opacity .22s ease,transform .22s ease,visibility .22s ease !important}
  .qv-main-nav.is-open{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) scale(1) !important}
  .qv-main-nav a,.qv-main-nav .qv-nav-contact{width:100% !important;padding:14px 15px !important;border-radius:14px !important}
  .qv-mobile-nav-top{display:flex !important;flex-direction:column !important;gap:4px !important;padding:10px 12px 12px !important;margin-bottom:4px !important;border-bottom:1px solid rgba(140,178,232,.10) !important;color:#dce8f8 !important}
  body:not(.home) .qv-main{padding-top:78px !important}
  body.home .qv30-hero{padding-top:118px !important}
  .page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:1fr !important}
  .page-template-page-projects .qv-project:first-child{grid-column:auto !important}
}
@media (max-width:640px){
  body.admin-bar .qv-site-header{top:46px !important}
  .qv-site-header .qv-nav-wrap{height:74px !important}
  .qv-logo--header .qv-logo-image,body.home .qv-logo--header .qv-logo-image{max-height:50px !important;max-width:196px !important}
  .qv-main-nav{top:80px !important;left:10px !important;right:10px !important;max-height:calc(100vh - 92px) !important}
  body:not(.home) .qv-main{padding-top:74px !important}
  .qv-page-hero .qv-container{padding:28px 20px !important;border-radius:24px !important}
}

/* ===== Qavirio v3.1.0 — homepage style sync + corrected code motion ===== */
body.home .qv-site-header,
body:not(.home) .qv-site-header{
  position:fixed !important;
  top:0; left:0; right:0;
  z-index:120 !important;
  background:linear-gradient(180deg,rgba(4,18,40,.90),rgba(5,18,39,.74)) !important;
  border-bottom:1px solid rgba(133,195,255,.12) !important;
  box-shadow:none !important;
  backdrop-filter:blur(16px) !important;
  overflow:hidden;
}
body.home .qv-site-header.is-scrolled,
body:not(.home) .qv-site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(4,18,40,.97),rgba(4,18,40,.92)) !important;
  box-shadow:0 14px 30px rgba(3,12,27,.20) !important;
  border-bottom-color:rgba(133,195,255,.16) !important;
}
body.home .qv-site-header:before,
body:not(.home) .qv-site-header:before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(83,166,255,.10),rgba(0,0,0,0) 36%,rgba(99,223,255,.06));
  pointer-events:none;
  z-index:0;
}
body.home .qv-site-header:after,
body:not(.home) .qv-site-header:after{
  content:'';
  position:absolute;
  left:-15%; right:-15%; bottom:0;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(96,212,255,.74),rgba(255,255,255,0));
  animation:qvHeaderLine 7s linear infinite;
  pointer-events:none;
  z-index:0;
}
body.home .qv-site-header .qv-nav-wrap,
body:not(.home) .qv-site-header .qv-nav-wrap{
  position:relative; z-index:2;
  height:88px !important;
}
body.home .qv-site-header > .qv-code-motion--header,
body:not(.home) .qv-site-header > .qv-code-motion--header{display:none !important}
body.admin-bar .qv-site-header{top:32px !important}
@media (max-width:640px){body.admin-bar .qv-site-header{top:46px !important}}

/* make all inner pages use the same premium structure as the homepage */
body:not(.home){
  background:#eef3f8 !important;
  color:#0c1f3d;
}
body:not(.home):before{display:none !important}
body:not(.home) .qv-main{
  background:linear-gradient(180deg,#071326 0 360px,#eef3f8 360px calc(100% - 320px),#071326 calc(100% - 320px),#071326 100%) !important;
  padding-top:0 !important;
}
body:not(.home) .qv-page-hero{
  position:relative; overflow:hidden;
  padding:126px 0 42px !important;
  background:linear-gradient(180deg,#071326 0%,#0a2448 60%,#071326 100%) !important;
}
body:not(.home) .qv-page-hero:after{
  content:'';
  position:absolute; inset:0;
  background:url('../img/hero/qavirio-v3-landscape.svg') center/cover no-repeat;
  opacity:.22; pointer-events:none;
}
body:not(.home) .qv-page-hero .qv-container{
  min-height:260px !important;
  padding:46px !important;
  border-radius:30px !important;
  border:1px solid rgba(145,195,255,.14) !important;
  background:linear-gradient(145deg,rgba(9,22,49,.86),rgba(6,14,31,.80)) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.24) !important;
}
body:not(.home) .qv-page-hero .qv-kicker{color:#63d7ff !important}
body:not(.home) .qv-page-hero h1,
body:not(.home) .qv-page-hero p{color:#fff !important}
body:not(.home) .qv-page-hero p{color:#d6e5f4 !important;max-width:760px !important}
body:not(.home) .qv-page-hero .qv-code-motion--page{display:none !important}
body:not(.home) .qv-section{
  background:#eef3f8 !important;
  padding:66px 0 !important;
}
body:not(.home) .qv-section h2,
body:not(.home) .qv-section h3,
body:not(.home) .qv-section p,
body:not(.home) .qv-section strong,
body:not(.home) .qv-section span,
body:not(.home) .qv-section em{color:inherit}
body:not(.home) .qv-section .qv-card,
body:not(.home) .qv-section .qv-feature-list div,
body:not(.home) .qv-section .qv-form-wrap,
body:not(.home) .qv-section .qv-prose,
body:not(.home) .qv-section .qv-contact-box,
body:not(.home) .qv-section .qv-project{
  background:linear-gradient(180deg,#ffffff,#f9fbff) !important;
  border:1px solid rgba(150,184,224,.22) !important;
  box-shadow:0 18px 40px rgba(19,40,76,.08) !important;
  color:#102543 !important;
}
body:not(.home) .qv-section .qv-card p,
body:not(.home) .qv-section .qv-feature-list span,
body:not(.home) .qv-section .qv-project p,
body:not(.home) .qv-section .qv-prose p,
body:not(.home) .qv-section .qv-contact-box span{color:#516784 !important}
body:not(.home) .qv-section .qv-project-title,
body:not(.home) .qv-section .qv-card h3,
body:not(.home) .qv-section .qv-feature-list strong,
body:not(.home) .qv-section .qv-prose h2{color:#102543 !important}
body:not(.home) .qv-section .qv-project-kicker,
body:not(.home) .qv-section .qv-kicker,
body:not(.home) .qv-section .qv-project em{color:#1f86ff !important}
body:not(.home) .qv-section .qv-project-preview,
body:not(.home) .qv-section .qv-project-browser,
body:not(.home) .qv-section .qv-project-badge,
body:not(.home) .qv-section .qv-project-chip{
  background:linear-gradient(180deg,rgba(8,20,45,.98),rgba(5,13,31,.98)) !important;
  color:#fff !important;
}
body:not(.home) .qv-section .qv-project:first-child{grid-column:auto !important;min-height:356px !important}
body:not(.home) .qv-section .qv-project:nth-child(2),
body:not(.home) .qv-section .qv-project:nth-child(3){transform:none !important}
body:not(.home) .qv-footer{background:#071326 !important}

/* homepage hero: no circle animation in the top hero, only structured floating code chips + lines */
.qv30-hero > .qv-code-motion--hero{position:absolute;inset:0;z-index:1;overflow:hidden}
.qv30-hero > .qv-code-motion--hero .qv-code-shape{display:none !important}
.qv30-hero > .qv-code-motion--hero .qv-code-line{opacity:.26 !important}
.qv30-hero .qv30-orb{display:none !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:112px;max-width:170px;height:34px;padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(114,189,255,.18);
  background:linear-gradient(180deg,rgba(12,28,59,.88),rgba(7,18,40,.72));
  color:#eff7ff; font-size:12px; font-weight:700; letter-spacing:.02em;
  box-shadow:0 14px 30px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.04);
  animation:qvChipFloat 9s ease-in-out infinite, qvChipDriftSafe 16s linear infinite;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:92px !important;left:4% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:86px !important;right:8% !important;left:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:46% !important;left:8% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:60% !important;left:77% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{top:28% !important;left:58% !important;display:inline-flex !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{top:74% !important;left:50% !important;display:inline-flex !important}
@media (max-width:1180px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4{left:72% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5{left:52% !important}
}
@media (max-width:900px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip{max-width:144px;height:32px;font-size:11px}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none !important}
}
@media (max-width:640px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5{display:none !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:86px !important;left:6% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:58% !important;left:8% !important}
}

/* bottom dark contact block: circles only here + floating code chips over the full block */
.qv30-contact{position:relative;overflow:hidden}
.qv30-contact > .qv-code-motion--contact{position:absolute;inset:0;z-index:1;overflow:hidden}
.qv30-contact-grid{position:relative;z-index:2}
.qv30-contact > .qv-code-motion--contact .qv-code-line{opacity:.22 !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape{
  border-radius:50% !important;
  border:1px solid rgba(115,191,255,.12);
  background:radial-gradient(circle,rgba(99,184,255,.20),rgba(99,184,255,.06) 46%,rgba(99,184,255,0) 72%);
  box-shadow:0 0 40px rgba(0,174,255,.12);
  animation:qvFloat 12s ease-in-out infinite alternate;
}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--1{width:118px !important;height:118px !important;left:4% !important;top:24% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--2{width:90px !important;height:90px !important;right:5% !important;top:18% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-shape--3{width:72px !important;height:72px !important;right:14% !important;bottom:18% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:112px;max-width:170px;height:34px;padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(114,189,255,.18);
  background:linear-gradient(180deg,rgba(11,25,54,.84),rgba(7,17,39,.70));
  color:#eff7ff; font-size:12px; font-weight:700; letter-spacing:.02em;
  box-shadow:0 14px 30px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.04);
  animation:qvChipFloat 9s ease-in-out infinite, qvChipDriftSafe 16s linear infinite;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--1{top:8% !important;left:6% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--2{top:9% !important;left:72% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--3{top:40% !important;left:44% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--4{bottom:9% !important;left:74% !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--5{bottom:11% !important;left:8% !important;display:inline-flex !important}
.qv30-contact > .qv-code-motion--contact .qv-code-chip--6{top:70% !important;left:52% !important;display:inline-flex !important}
@media (max-width:900px){
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--2,
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--4,
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--6{display:none !important}
}
@media (max-width:640px){
  .qv30-contact > .qv-code-motion--contact .qv-code-shape--2,
  .qv30-contact > .qv-code-motion--contact .qv-code-chip--5{display:none !important}
}

/* make the project page and other inner sections follow homepage card rhythm */
.page-template-page-projects .qv-section,
.page-template-page-services .qv-section,
.page-template-page-platforms .qv-section,
.page-template-page-about .qv-section,
.page-template-page-contact .qv-section,
.page-template-page-service-detail .qv-section,
.page-template-page-insights .qv-section,
.page-template-page-legal .qv-section,
.page-template-page-terms .qv-section,
.page-template-page-privacy .qv-section,
.page-template-page-cookies .qv-section{background:#eef3f8 !important}

.page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:24px !important;align-items:stretch !important}
.page-template-page-projects .qv-project{min-height:356px !important}
@media (max-width:980px){.page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:760px){.page-template-page-projects .qv-project-grid--portfolio{grid-template-columns:1fr !important}}


/* Qavirio v3.1.3 — final polish: header logo, nav glow, insights, portfolio, process, mobile */
.qv-site-header{overflow:hidden}
.qv-site-header:before{content:"";position:absolute;left:-20%;top:-80px;width:50%;height:180px;background:radial-gradient(circle, rgba(61,164,255,.26) 0%, rgba(61,164,255,.10) 30%, rgba(61,164,255,0) 72%);filter:blur(10px);animation:qvHeaderGlowSweep 9s ease-in-out infinite;pointer-events:none;z-index:0}
.qv-site-header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg, rgba(98,215,255,0), rgba(98,215,255,.9), rgba(98,215,255,0));background-size:220% 100%;animation:qvHeaderLineMove 7s linear infinite;opacity:.95;pointer-events:none;z-index:1}
.qv-nav-wrap{position:relative;z-index:2}
@keyframes qvHeaderGlowSweep{0%{transform:translateX(0);opacity:.35}25%{opacity:.72}50%{transform:translateX(110%);opacity:.5}75%{opacity:.8}100%{transform:translateX(0);opacity:.35}}
@keyframes qvHeaderLineMove{0%{background-position:0% 0}100%{background-position:220% 0}}
.qv-logo--header .qv-logo-image,body.home .qv-logo--header .qv-logo-image{max-height:72px !important;max-width:310px !important;filter:none !important}
@media (max-width:980px){.qv-logo--header .qv-logo-image,body.home .qv-logo--header .qv-logo-image{max-height:60px !important;max-width:248px !important}}
@media (max-width:640px){.qv-logo--header .qv-logo-image,body.home .qv-logo--header .qv-logo-image{max-height:54px !important;max-width:220px !important}}

/* mobile menu hardening */
@media (max-width:980px){
  .qv-main-nav{z-index:10040 !important}
  .qv-main-nav.is-open{display:flex !important;opacity:1 !important;visibility:visible !important;pointer-events:auto !important}
  .qv-main-nav a,.qv-main-nav .qv-nav-contact{display:flex !important;align-items:center !important;justify-content:space-between !important;width:100% !important}
}

/* portfolio page */
.page-template-page-projects .qv-section{padding-top:56px;padding-bottom:80px}
.qv-project-list{display:flex;flex-direction:column;gap:26px}
.qv-project-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.9fr);gap:28px;align-items:center;padding:24px;border-radius:28px;background:linear-gradient(180deg,#071935,#051226);border:1px solid rgba(101,180,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.22)}
.qv-project-row-media{display:block;border-radius:22px;overflow:hidden;background:#09111e;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 40px rgba(0,0,0,.24)}
.qv-project-row-media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
.qv-project-row-content h2{margin:10px 0 14px;color:#fff;font-size:38px;line-height:1.02}
.qv-project-row-content p{margin:0;color:#bfd1ea;font-size:17px;line-height:1.8;max-width:56ch}
.qv-project-row-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}
.qv-project-meta{display:inline-block;padding:7px 12px;border-radius:999px;background:rgba(12,31,63,.86);border:1px solid rgba(98,215,255,.16);color:#69d9ff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
@media (max-width:980px){.qv-project-row{grid-template-columns:1fr;gap:18px}.qv-project-row-content h2{font-size:32px}}
@media (max-width:640px){.qv-project-row{padding:16px;border-radius:22px}.qv-project-row-content h2{font-size:28px}.qv-project-row-content p{font-size:15px;line-height:1.7}}

/* insights page */
.qv-insights-index{padding-top:48px;padding-bottom:30px}
.qv-insights-intro{max-width:840px;margin-bottom:24px}
.qv-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.qv-insight-card{padding:22px;border-radius:24px;background:#fff;border:1px solid #e3eaf3;box-shadow:0 14px 36px rgba(7,31,63,.06)}
.qv-insight-card h3{margin:8px 0 12px;font-size:28px;line-height:1.08;color:#081c46}
.qv-insight-card p{margin:0 0 12px;color:#617087;line-height:1.75}
.qv-text-link{font-weight:700;color:#0f63ff;text-decoration:none}
.qv-insights-stack{display:flex;flex-direction:column;gap:22px}
.qv-insight-article{padding:28px 30px;border-radius:28px;background:#fff;border:1px solid #e4ebf5;box-shadow:0 16px 42px rgba(7,31,63,.06)}
.qv-insight-article h2{margin:10px 0 14px;color:#081c46;font-size:42px;line-height:1}
.qv-insight-article .qv-lead{font-size:19px;color:#1c385f;margin-bottom:14px}
.qv-insight-article p{color:#5a6a81;line-height:1.85;margin:0 0 14px}
@media (max-width:980px){.qv-insight-grid{grid-template-columns:1fr 1fr}.qv-insight-article h2{font-size:34px}}
@media (max-width:640px){.qv-insight-grid{grid-template-columns:1fr}.qv-insight-card h3{font-size:24px}.qv-insight-article{padding:22px 20px}.qv-insight-article h2{font-size:28px}.qv-insight-article .qv-lead{font-size:17px}}

/* process page */
.qv-process-steps{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.qv-process-step,.qv-process-extra{padding:26px;border-radius:26px;background:#fff;border:1px solid #e5ecf5;box-shadow:0 14px 40px rgba(7,31,63,.06)}
.qv-process-step h2,.qv-process-extra h2{margin:0 0 12px;font-size:30px;line-height:1.05;color:#081c46}
.qv-process-step p,.qv-process-extra p{margin:0;color:#5c6b82;line-height:1.85}
.qv-process-extra{margin-top:20px}
@media (max-width:980px){.qv-process-steps{grid-template-columns:1fr}.qv-process-step h2,.qv-process-extra h2{font-size:26px}}

/* inner page hero consistency */
.qv-page-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#072145 0%,#0a2f5f 100%);padding:92px 0 68px;border-bottom:1px solid rgba(255,255,255,.06)}
.qv-page-hero:before{content:"";position:absolute;inset:auto -10% 0 auto;width:520px;height:220px;background:radial-gradient(circle,rgba(98,215,255,.12),rgba(98,215,255,0) 72%);filter:blur(20px)}
.qv-page-hero .qv-container{position:relative;z-index:2}
.qv-page-hero h1{max-width:14ch;color:#fff;font-size:62px;line-height:.98;margin:12px 0 16px}
.qv-page-hero p{max-width:780px;color:#c3d4ea;font-size:18px;line-height:1.8}
.qv-page-hero .qv-kicker{color:#7fddff}
@media (max-width:980px){.qv-page-hero{padding:78px 0 56px}.qv-page-hero h1{font-size:50px}}
@media (max-width:640px){.qv-page-hero{padding:70px 0 44px}.qv-page-hero h1{font-size:38px}.qv-page-hero p{font-size:16px}}


/* Qavirio v3.1.4 — header animation restore, hero code chips, portfolio rebuild, mobile nav hard fix */
body.home .qv-site-header,
body:not(.home) .qv-site-header{
  background:linear-gradient(180deg,rgba(3,16,36,.84),rgba(3,16,36,.34)) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:none !important;
}
body.home .qv-site-header.is-scrolled,
body:not(.home) .qv-site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(4,18,40,.97),rgba(4,18,40,.90)) !important;
  box-shadow:0 16px 28px rgba(4,13,31,.18) !important;
  border-bottom-color:rgba(255,255,255,.08) !important;
}
body.home .qv-site-header:before,
body:not(.home) .qv-site-header:before{
  content:'' !important;position:absolute !important;inset:-40% auto auto -10% !important;width:42% !important;height:220% !important;
  background:radial-gradient(circle, rgba(89,196,255,.20) 0%, rgba(89,196,255,0) 68%) !important;
  filter:blur(8px) !important;animation:qvHeaderGlowClassic 14s ease-in-out infinite !important;pointer-events:none !important;z-index:0 !important;
}
body.home .qv-site-header:after,
body:not(.home) .qv-site-header:after{
  content:'' !important;position:absolute !important;left:-10% !important;right:-10% !important;bottom:-1px !important;height:1px !important;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(97,203,255,.75),rgba(255,255,255,0)) !important;
  animation:qvHeaderLineClassic 6.5s linear infinite !important;pointer-events:none !important;z-index:0 !important;
}
@keyframes qvHeaderGlowClassic{0%,100%{transform:translateX(0)}50%{transform:translateX(110%)}}
@keyframes qvHeaderLineClassic{0%{transform:translateX(-8%)}100%{transform:translateX(8%)}}

/* no code chips inside fixed header menu */
body.home .qv-site-header > .qv-code-motion--header,
body:not(.home) .qv-site-header > .qv-code-motion--header{display:none !important}

/* restore clear hero code motion */
.qv30-hero > .qv-code-motion--hero{display:block !important;position:absolute !important;inset:0 !important;z-index:1 !important;overflow:hidden !important;opacity:1 !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{
  display:inline-flex !important;align-items:center !important;gap:8px !important;max-width:none !important;white-space:nowrap !important;
  padding:9px 14px !important;border-radius:999px !important;border:1px solid rgba(144,214,255,.18) !important;
  background:linear-gradient(180deg, rgba(8,25,53,.76), rgba(8,25,53,.30)) !important;color:#eef7ff !important;
  box-shadow:0 18px 42px rgba(3,12,26,.22) !important;
  animation:qvChipFloat 10s ease-in-out infinite,qvChipDrift 18s linear infinite !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-line{display:block !important;opacity:.22 !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape{display:block !important;border-radius:50% !important;background:radial-gradient(circle, rgba(138,213,255,.14), rgba(138,213,255,.04) 62%, rgba(138,213,255,0) 72%) !important;border:1px solid rgba(167,223,255,.12) !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:116px !important;left:4% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:104px !important;right:8% !important;left:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:42% !important;left:46% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:66% !important;right:12% !important;left:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:14% !important;left:14% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{bottom:18% !important;left:58% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--1{width:190px !important;height:190px !important;top:78px !important;left:8% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--2{width:130px !important;height:130px !important;top:106px !important;right:10% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--3{width:96px !important;height:96px !important;top:54% !important;left:55% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-line--1{top:28% !important;width:68% !important;left:17% !important}
.qv30-hero > .qv-code-motion--hero .qv-code-line--2{top:58% !important;width:58% !important;left:18% !important}
@media (max-width:980px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip{font-size:11px !important;padding:8px 12px !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2{right:6% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none !important}
}
@media (max-width:640px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2,.qv30-hero > .qv-code-motion--hero .qv-code-chip--4,.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:84px !important;left:4% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:56% !important;left:8% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:12% !important;left:14% !important}
}

/* project page more premium, without dark text panel */
.qv-projects-showcase{padding-top:40px;padding-bottom:84px}
.qv-project-showcase-list{display:flex;flex-direction:column;gap:32px}
.qv-project-showcase{display:flex;flex-direction:column;gap:18px;padding:0;border:0;background:transparent;box-shadow:none}
.qv-project-showcase-media{display:block;border-radius:32px;overflow:hidden;background:#061731;box-shadow:0 28px 68px rgba(6,22,44,.18);border:1px solid rgba(8,33,68,.06)}
.qv-project-showcase-media img{display:block;width:100%;aspect-ratio:16/8.2;object-fit:cover}
.qv-project-showcase-copy{padding:0 6px 8px}
.qv-project-showcase-copy h2{margin:10px 0 12px;font-size:42px;line-height:.98;color:#071a3b;letter-spacing:-.03em}
.qv-project-showcase-copy p{margin:0;max-width:70ch;color:#586985;font-size:18px;line-height:1.85}
.qv-project-showcase-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}
.qv-project-showcase .qv-project-meta{background:rgba(14,101,255,.08);border:1px solid rgba(14,101,255,.10);color:#0d66ff}
.qv-project-showcase .qv-btn--primary{box-shadow:0 14px 32px rgba(17,99,255,.18)}
.qv-project-showcase .qv-btn--secondary{background:#fff;border:1px solid #dbe5f1;color:#11284f}
.qv-project-showcase .qv-btn--secondary:hover{background:#f6f9fc}
@media (max-width:980px){.qv-project-showcase-copy h2{font-size:36px}.qv-project-showcase-media img{aspect-ratio:16/9}}
@media (max-width:640px){.qv-projects-showcase{padding-top:28px;padding-bottom:64px}.qv-project-showcase-list{gap:22px}.qv-project-showcase-media{border-radius:22px}.qv-project-showcase-copy{padding:0}.qv-project-showcase-copy h2{font-size:30px}.qv-project-showcase-copy p{font-size:16px;line-height:1.75}.qv-project-showcase-actions{display:grid;grid-template-columns:1fr;gap:10px}}

/* mobile nav hard fix */
@media (max-width:980px){
  .qv-menu-toggle{display:inline-flex !important;position:relative !important;z-index:10060 !important}
  .qv-main-nav{position:fixed !important;left:12px !important;right:12px !important;top:86px !important;display:flex !important;flex-direction:column !important;gap:8px !important;opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(-10px) scale(.98) !important;max-height:calc(100vh - 98px) !important;overflow:auto !important;padding:12px !important;border-radius:22px !important;background:linear-gradient(180deg,rgba(7,17,34,.99),rgba(5,12,27,.99)) !important;border:1px solid rgba(130,179,238,.18) !important;box-shadow:0 26px 60px rgba(0,0,0,.46),0 0 0 1px rgba(99,214,255,.05) !important;transition:opacity .22s ease,transform .22s ease,visibility .22s ease !important;z-index:10050 !important}
  body.admin-bar .qv-main-nav{top:118px !important;max-height:calc(100vh - 130px) !important}
  .qv-main-nav.is-open,.qv-main-nav[aria-hidden="false"]{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) scale(1) !important}
  .qv-main-nav a,.qv-main-nav .qv-nav-contact{display:flex !important;align-items:center !important;justify-content:space-between !important;width:100% !important;padding:14px 15px !important;border-radius:14px !important}
  .qv-main-nav .qv-mobile-nav-top{display:flex !important;flex-direction:column !important;gap:2px !important;padding:10px 14px 12px !important}
  .qv-main-nav a:hover{background:rgba(255,255,255,.06) !important;transform:none !important}
}
@media (max-width:640px){.qv-main-nav{left:10px !important;right:10px !important;top:80px !important;max-height:calc(100vh - 92px) !important}body.admin-bar .qv-main-nav{top:126px !important;max-height:calc(100vh - 138px) !important}}

/* mobile spacing finetuning */
@media (max-width:820px){
  .qv30-section,.qv-section{padding-top:52px !important;padding-bottom:52px !important}
  .qv30-intro-grid,.qv30-cases-grid,.qv30-blog-grid,.qv30-contact-grid{gap:22px !important}
}
@media (max-width:640px){
  .qv30-hero{padding-top:114px !important;padding-bottom:28px !important}
  .qv30-hero-copy p,.qv30-intro-copy p,.qv30-blog-copy p,.qv30-contact-copy p{font-size:16px !important;line-height:1.75 !important}
  .qv30-service-card,.qv30-case-card,.qv30-blog-card,.qv30-contact-copy,.qv30-form-wrap,.qv-insight-card,.qv-insight-article,.qv-process-step,.qv-process-extra{border-radius:22px !important}
  .qv-footer-main,.qv-footer-brand,.qv-footer-links,.qv-footer-contact{border-radius:18px !important}
}


/* Qavirio v3.1.5 — mobile menu click fix, larger readable logo, visible hero code chips */
.qv-logo--header .qv-logo-image,
body.home .qv-logo--header .qv-logo-image{
  max-height:80px !important;
  max-width:360px !important;
  width:auto !important;
  filter:none !important;
}
@media (max-width:980px){
  .qv-logo--header .qv-logo-image,
  body.home .qv-logo--header .qv-logo-image{
    max-height:68px !important;
    max-width:300px !important;
  }
}
@media (max-width:640px){
  .qv-logo--header .qv-logo-image,
  body.home .qv-logo--header .qv-logo-image{
    max-height:58px !important;
    max-width:240px !important;
  }
}

/* Hero code chips must be visible under the fixed header */
.qv30-hero > .qv-code-motion--hero{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
  overflow:hidden !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{
  display:inline-flex !important;
  align-items:center !important;
  visibility:visible !important;
  opacity:1 !important;
  max-width:none !important;
  white-space:nowrap !important;
  padding:9px 14px !important;
  border-radius:999px !important;
  border:1px solid rgba(140,218,255,.20) !important;
  background:linear-gradient(180deg, rgba(10,28,56,.74), rgba(7,18,38,.34)) !important;
  box-shadow:0 16px 38px rgba(4,13,28,.22) !important;
  color:#eff8ff !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:110px !important;left:4% !important;right:auto !important;bottom:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:104px !important;right:8% !important;left:auto !important;bottom:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:41% !important;left:44% !important;right:auto !important;bottom:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:64% !important;right:14% !important;left:auto !important;bottom:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:13% !important;left:14% !important;top:auto !important;right:auto !important}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{bottom:18% !important;left:60% !important;top:auto !important;right:auto !important}
@media (max-width:980px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2{right:6% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4{right:8% !important}
}
@media (max-width:640px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip{font-size:11px !important;padding:8px 12px !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:92px !important;left:4% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:55% !important;left:8% !important}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:12% !important;left:14% !important}
}

/* Strong mobile menu behaviour */
@media (max-width:980px){
  .qv-menu-toggle{display:inline-flex !important;align-items:center !important;justify-content:center !important;z-index:10060 !important}
  .qv-main-nav{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:86px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    padding:12px !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(-10px) scale(.98) !important;
    max-height:calc(100vh - 100px) !important;
    overflow:auto !important;
    background:linear-gradient(180deg, rgba(6,18,39,.985), rgba(4,12,28,.985)) !important;
    border:1px solid rgba(128,194,255,.18) !important;
    border-radius:22px !important;
    box-shadow:0 26px 60px rgba(0,0,0,.42) !important;
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease !important;
    z-index:10050 !important;
  }
  body.admin-bar .qv-main-nav{top:118px !important;max-height:calc(100vh - 132px) !important}
  .qv-main-nav.is-open,
  .qv-main-nav[aria-hidden="false"],
  body.qv-menu-open .qv-main-nav{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) scale(1) !important;
  }
  .qv-main-nav a,
  .qv-main-nav .qv-nav-contact{display:flex !important;width:100% !important;align-items:center !important;justify-content:space-between !important}
}
@media (max-width:640px){
  .qv-main-nav{left:10px !important;right:10px !important;top:80px !important;max-height:calc(100vh - 92px) !important}
  body.admin-bar .qv-main-nav{top:126px !important;max-height:calc(100vh - 138px) !important}
}


/* ===============================
   Qavirio v3.1.6 — definitive mobile dropdown, readable logo,
   hero code chips back, portfolio & spacing polish
   =============================== */

@keyframes qvHeaderGlowSweep {
  0%   { transform: translateX(-8%) scaleX(.94); opacity: .38; }
  50%  { transform: translateX(2%) scaleX(1.02); opacity: .62; }
  100% { transform: translateX(8%) scaleX(.96); opacity: .42; }
}

.qv-site-header{
  overflow: visible !important;
  z-index: 9999 !important;
}
.qv-site-header:after{
  content:'';
  position:absolute;
  left:16%;
  right:16%;
  top:0;
  height:100%;
  pointer-events:none;
  background: radial-gradient(ellipse at center, rgba(104,198,255,.16), rgba(104,198,255,.03) 42%, rgba(104,198,255,0) 70%);
  filter: blur(14px);
  animation:qvHeaderGlowSweep 9s ease-in-out infinite alternate;
  z-index:0;
}
.qv-site-header .qv-nav-wrap{position:relative;z-index:3 !important;}
.qv-menu-toggle{position:relative;z-index:10061 !important;}
.qv-logo--header .qv-logo-image,
body.home .qv-logo--header .qv-logo-image{
  max-height:86px !important;
  max-width:380px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}
@media (max-width:980px){
  .qv-logo--header .qv-logo-image,
  body.home .qv-logo--header .qv-logo-image{
    max-height:72px !important;
    max-width:300px !important;
  }
}
@media (max-width:640px){
  .qv-logo--header .qv-logo-image,
  body.home .qv-logo--header .qv-logo-image{
    max-height:62px !important;
    max-width:240px !important;
  }
}

/* mobile dropdown menu must open ABOVE the header and work reliably */
@media (max-width:980px){
  .qv-site-header{min-height:82px !important;}
  .qv-main-nav{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:84px !important;
    z-index:10050 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    padding:12px !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(-12px) scale(.985) !important;
    transform-origin:top center !important;
    max-height:calc(100vh - 96px) !important;
    overflow:auto !important;
    background:linear-gradient(180deg, rgba(6,17,35,.985), rgba(4,11,25,.99)) !important;
    border:1px solid rgba(129,192,255,.18) !important;
    border-radius:22px !important;
    box-shadow:0 28px 70px rgba(0,0,0,.48), 0 0 0 1px rgba(99,214,255,.06) !important;
    backdrop-filter:blur(18px) !important;
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease !important;
  }
  .qv-main-nav.is-open,
  body.qv-menu-open .qv-main-nav,
  .qv-main-nav[aria-hidden="false"]{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) scale(1) !important;
  }
  .qv-main-nav a,
  .qv-main-nav .qv-nav-contact{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    padding:14px 15px !important;
    border-radius:14px !important;
  }
  .qv-main-nav a:hover,
  .qv-main-nav .qv-nav-contact:hover{background:rgba(255,255,255,.055) !important;}
  .qv-mobile-nav-top{display:flex !important;flex-direction:column;gap:3px;padding:10px 12px 12px;color:#eef6ff;}
  .qv-mobile-nav-top strong{font-size:17px;line-height:1.1;}
  .qv-mobile-nav-top span{font-size:12px;color:#9fb8d8;}
  body.admin-bar .qv-main-nav{top:116px !important;max-height:calc(100vh - 128px) !important;}
}
@media (max-width:640px){
  .qv-site-header{min-height:76px !important;}
  .qv-main-nav{left:10px !important;right:10px !important;top:78px !important;max-height:calc(100vh - 90px) !important;}
  body.admin-bar .qv-main-nav{top:124px !important;max-height:calc(100vh - 136px) !important;}
}

/* hero code chips visible again, nicely spread across the full hero */
.qv30-hero{position:relative;overflow:hidden;}
.qv30-hero > .qv-code-motion--hero{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-line{
  display:block !important;
  opacity:.20 !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-shape{
  display:block !important;
  border-radius:50% !important;
  background:radial-gradient(circle, rgba(138,213,255,.12), rgba(138,213,255,.04) 60%, rgba(138,213,255,0) 74%) !important;
  border:1px solid rgba(167,223,255,.12) !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-chip{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  max-width:none !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  border:1px solid rgba(140,218,255,.18) !important;
  background:linear-gradient(180deg, rgba(8,23,50,.74), rgba(7,17,36,.34)) !important;
  color:#eef8ff !important;
  box-shadow:0 14px 30px rgba(4,10,24,.18) !important;
  animation:qvChipFloat 9.5s ease-in-out infinite, qvChipDriftSafe 16s linear infinite !important;
}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:116px !important;left:4% !important;right:auto !important;bottom:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--2{top:102px !important;left:auto !important;right:8% !important;bottom:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:42% !important;left:44% !important;right:auto !important;bottom:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--4{top:66% !important;left:auto !important;right:12% !important;bottom:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:13% !important;left:14% !important;right:auto !important;top:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-chip--6{bottom:17% !important;left:58% !important;right:auto !important;top:auto !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--1{width:168px !important;height:168px !important;top:82px !important;left:8% !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--2{width:126px !important;height:126px !important;top:106px !important;right:10% !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-shape--3{width:92px !important;height:92px !important;top:54% !important;left:53% !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-line--1{top:28% !important;width:68% !important;left:16% !important;}
.qv30-hero > .qv-code-motion--hero .qv-code-line--2{top:58% !important;width:60% !important;left:18% !important;}
@media (max-width:980px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip{font-size:11px !important;padding:8px 12px !important;}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2{right:6% !important;}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4{right:8% !important;}
}
@media (max-width:640px){
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--2,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--4,
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--6{display:none !important;}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--1{top:92px !important;left:4% !important;}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--3{top:56% !important;left:8% !important;}
  .qv30-hero > .qv-code-motion--hero .qv-code-chip--5{bottom:12% !important;left:14% !important;}
}

/* portfolio page: no dark right-side frame feeling, larger visuals, cleaner copy */
.qv-projects-showcase{padding-top:34px;padding-bottom:84px;background:linear-gradient(180deg, #f3f7fb 0%, #eff4f8 100%);}
.qv-project-showcase-list{gap:54px !important;}
.qv-project-showcase{display:block !important;}
.qv-project-showcase-media{
  display:block;
  border-radius:34px !important;
  overflow:hidden;
  border:1px solid rgba(9,35,74,.07) !important;
  background:#081731 !important;
  box-shadow:0 30px 72px rgba(8,24,48,.14) !important;
}
.qv-project-showcase-media img{display:block;width:100%;aspect-ratio:16/7.2 !important;object-fit:cover;object-position:top center;}
.qv-project-showcase-copy{padding:22px 2px 0 !important;max-width:none !important;}
.qv-project-showcase-copy h2{font-size:46px !important;line-height:.96 !important;letter-spacing:-.04em !important;color:#071a3b !important;max-width:18ch;}
.qv-project-showcase-copy p{max-width:72ch !important;color:#556783 !important;font-size:18px !important;line-height:1.82 !important;}
.qv-project-showcase .qv-project-meta{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(14,101,255,.08);border:1px solid rgba(14,101,255,.10);color:#0d66ff;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:12px;}
.qv-project-showcase-actions{gap:14px !important;margin-top:22px !important;}
.qv-project-showcase .qv-btn--primary{background:linear-gradient(135deg, #0f6dff, #2dd6ff) !important;border-color:transparent !important;}
.qv-project-showcase .qv-btn--secondary{background:#fff !important;border:1px solid #dbe5f1 !important;color:#11284f !important;}
@media (max-width:980px){
  .qv-project-showcase-list{gap:34px !important;}
  .qv-project-showcase-media{border-radius:26px !important;}
  .qv-project-showcase-media img{aspect-ratio:16/8.6 !important;}
  .qv-project-showcase-copy h2{font-size:38px !important;}
}
@media (max-width:640px){
  .qv-projects-showcase{padding-top:28px !important;padding-bottom:64px !important;}
  .qv-project-showcase-list{gap:26px !important;}
  .qv-project-showcase-copy{padding-top:16px !important;}
  .qv-project-showcase-copy h2{font-size:31px !important;}
  .qv-project-showcase-copy p{font-size:16px !important;line-height:1.72 !important;}
}

/* final spacing cleanup */
@media (max-width:640px){
  .qv30-hero{padding-bottom:34px !important;}
  .qv30-hero .qv-container,
  .qv-section .qv-container,
  .qv-page-hero .qv-container{padding-left:18px !important;padding-right:18px !important;}
  .qv30-services{margin-top:18px !important;}
  .qv30-contact-grid{gap:18px !important;}
  .qv30-contact-copy,.qv30-contact-form{border-radius:22px !important;}
}


/* Qavirio v3.1.7 — hard mobile dropdown over-header fix */
.qv-mobile-nav-backdrop{position:fixed;inset:0;z-index:99990;background:rgba(2,8,18,.42);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease, visibility .2s ease}
.qv-mobile-nav-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}
@media (max-width:980px){
  body.qv-menu-open .qv-site-header{z-index:99991 !important;}
  body.qv-menu-open .qv-main-nav{z-index:100000 !important;}
}


/* ===============================
   Qavirio v3.1.8 — global footer sync
   Make every page footer match the approved homepage footer.
   =============================== */
.qv-footer.qv-footer--clean,
body.home .qv-footer.qv-footer--clean,
body:not(.home) .qv-footer.qv-footer--clean{
  position:relative !important;
  overflow:hidden !important;
  background:linear-gradient(180deg,#07162e 0%,#06111f 100%) !important;
  border-top:1px solid rgba(132,176,232,.12) !important;
  color:#d2def0 !important;
  padding:0 0 22px !important;
}
.qv-footer.qv-footer--clean:before,
body.home .qv-footer.qv-footer--clean:before,
body:not(.home) .qv-footer.qv-footer--clean:before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  background:radial-gradient(circle at 18% 14%,rgba(90,156,255,.10),transparent 26%),radial-gradient(circle at 88% 12%,rgba(0,212,255,.07),transparent 22%) !important;
  pointer-events:none !important;
}
.qv-footer-grid.qv-footer-grid--clean,
body.home .qv-footer-grid.qv-footer-grid--clean,
body:not(.home) .qv-footer-grid.qv-footer-grid--clean{
  position:relative !important;
  z-index:2 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:32px !important;
  padding:0 0 28px !important;
}
.qv-footer-grid.qv-footer-grid--clean:before,
body.home .qv-footer-grid.qv-footer-grid--clean:before,
body:not(.home) .qv-footer-grid.qv-footer-grid--clean:before{
  content:'' !important;
  display:block !important;
  grid-column:1/-1 !important;
  height:1px !important;
  background:rgba(255,255,255,.08) !important;
  margin:0 0 6px !important;
}
.qv-footer.qv-footer--clean .qv-footer-col,
body.home .qv-footer.qv-footer--clean .qv-footer-col,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-col{
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  transition:none !important;
}
.qv-footer.qv-footer--clean .qv-footer-col:hover,
body.home .qv-footer.qv-footer--clean .qv-footer-col:hover,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-col:hover{
  transform:none !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.qv-footer.qv-footer--clean .qv-footer-brand,
body.home .qv-footer.qv-footer--clean .qv-footer-brand,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-brand{
  display:flex !important;
  align-items:flex-start !important;
}
.qv-footer.qv-footer--clean .qv-footer-brand .qv-logo,
.qv-footer.qv-footer--clean .qv-logo,
body.home .qv-footer.qv-footer--clean .qv-logo,
body:not(.home) .qv-footer.qv-footer--clean .qv-logo{
  margin:0 !important;
  display:inline-flex !important;
}
.qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image,
body.home .qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image,
body:not(.home) .qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image{
  max-height:68px !important;
  max-width:300px !important;
  width:auto !important;
  filter:none !important;
}
.qv-footer.qv-footer--clean .qv-footer-nav-clean,
body.home .qv-footer.qv-footer--clean .qv-footer-nav-clean,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-nav-clean{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:18px 24px !important;
}
.qv-footer.qv-footer--clean .qv-footer-contact-clean,
body.home .qv-footer.qv-footer--clean .qv-footer-contact-clean,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-contact-clean{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:10px 24px !important;
}
.qv-footer.qv-footer--clean .qv-footer-nav-clean a,
.qv-footer.qv-footer--clean .qv-footer-contact-clean a,
body.home .qv-footer.qv-footer--clean .qv-footer-nav-clean a,
body.home .qv-footer.qv-footer--clean .qv-footer-contact-clean a,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-nav-clean a,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-contact-clean a{
  display:inline-flex !important;
  margin:0 !important;
  color:#d2def0 !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:600 !important;
  transform:none !important;
}
.qv-footer.qv-footer--clean .qv-footer-nav-clean a:hover,
.qv-footer.qv-footer--clean .qv-footer-contact-clean a:hover,
body.home .qv-footer.qv-footer--clean .qv-footer-nav-clean a:hover,
body.home .qv-footer.qv-footer--clean .qv-footer-contact-clean a:hover,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-nav-clean a:hover,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-contact-clean a:hover{
  color:#fff !important;
  transform:none !important;
}
.qv-footer-bottom.qv-footer-bottom--clean,
body.home .qv-footer-bottom.qv-footer-bottom--clean,
body:not(.home) .qv-footer-bottom.qv-footer-bottom--clean{
  position:relative !important;
  z-index:2 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px 26px !important;
  flex-wrap:wrap !important;
  margin-top:0 !important;
  padding-top:18px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:#91a3ba !important;
  font-size:11px !important;
  line-height:1.65 !important;
}
.qv-footer.qv-footer--clean .qv-footer-legal-inline,
body.home .qv-footer.qv-footer--clean .qv-footer-legal-inline,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-legal-inline{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:10px 14px !important;
}
.qv-footer.qv-footer--clean .qv-footer-legal-inline a,
body.home .qv-footer.qv-footer--clean .qv-footer-legal-inline a,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-legal-inline a{
  display:inline-flex !important;
  margin:0 !important;
  color:#d2def0 !important;
  font-size:11px !important;
  line-height:1.5 !important;
  transform:none !important;
}
.qv-footer.qv-footer--clean .qv-footer-legal-inline a:hover,
body.home .qv-footer.qv-footer--clean .qv-footer-legal-inline a:hover,
body:not(.home) .qv-footer.qv-footer--clean .qv-footer-legal-inline a:hover{
  color:#fff !important;
  transform:none !important;
}
@media (max-width:980px){
  .qv-footer-grid.qv-footer-grid--clean,
  body.home .qv-footer-grid.qv-footer-grid--clean,
  body:not(.home) .qv-footer-grid.qv-footer-grid--clean{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .qv-footer.qv-footer--clean .qv-footer-contact-clean,
  body.home .qv-footer.qv-footer--clean .qv-footer-contact-clean,
  body:not(.home) .qv-footer.qv-footer--clean .qv-footer-contact-clean{
    justify-content:flex-start !important;
  }
  .qv-footer-bottom.qv-footer-bottom--clean,
  body.home .qv-footer-bottom.qv-footer-bottom--clean,
  body:not(.home) .qv-footer-bottom.qv-footer-bottom--clean{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .qv-footer.qv-footer--clean .qv-footer-legal-inline,
  body.home .qv-footer.qv-footer--clean .qv-footer-legal-inline,
  body:not(.home) .qv-footer.qv-footer--clean .qv-footer-legal-inline{
    justify-content:flex-start !important;
  }
}
@media (max-width:640px){
  .qv-footer.qv-footer--clean,
  body.home .qv-footer.qv-footer--clean,
  body:not(.home) .qv-footer.qv-footer--clean{
    padding-bottom:18px !important;
  }
  .qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image,
  body.home .qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image,
  body:not(.home) .qv-footer.qv-footer--clean .qv-logo--footer .qv-logo-image{
    max-height:58px !important;
    max-width:240px !important;
  }
  .qv-footer.qv-footer--clean .qv-footer-nav-clean,
  .qv-footer.qv-footer--clean .qv-footer-contact-clean,
  body.home .qv-footer.qv-footer--clean .qv-footer-nav-clean,
  body.home .qv-footer.qv-footer--clean .qv-footer-contact-clean,
  body:not(.home) .qv-footer.qv-footer--clean .qv-footer-nav-clean,
  body:not(.home) .qv-footer.qv-footer--clean .qv-footer-contact-clean{
    gap:10px 16px !important;
  }
  .qv-footer-bottom.qv-footer-bottom--clean,
  body.home .qv-footer-bottom.qv-footer-bottom--clean,
  body:not(.home) .qv-footer-bottom.qv-footer-bottom--clean{
    font-size:10px !important;
  }
}

/* Qavirio v3.1.9 — portfolio/project presentation polish + Séjours au Figarol */
.qv30-trusted{margin-top:64px !important;padding-top:42px !important;border-top:1px solid rgba(12,31,61,.08) !important;}
.qv30-trusted-label{font-size:13px !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:#7c8a9b !important;font-weight:800 !important;margin-bottom:24px !important;}
.qv30-logo-strip{padding:14px 0 !important;}
.qv30-logo-strip:before{background:linear-gradient(90deg,#f7f7f6 0%,rgba(247,247,246,.96) 30%,rgba(247,247,246,0) 100%) !important;}
.qv30-logo-strip:after{background:linear-gradient(270deg,#f7f7f6 0%,rgba(247,247,246,.96) 30%,rgba(247,247,246,0) 100%) !important;}
.qv30-logo-track{gap:18px !important;animation:qvLogoMarquee 32s linear infinite !important;}
.qv30-logo-track span{min-width:auto !important;min-height:54px !important;padding:0 24px !important;border-radius:999px !important;background:rgba(255,255,255,.82) !important;border:1px solid rgba(13,40,76,.09) !important;box-shadow:0 12px 28px rgba(11,30,58,.06) !important;color:#243955 !important;font-size:17px !important;font-weight:900 !important;letter-spacing:-.01em !important;opacity:1 !important;white-space:nowrap !important;}
.qv30-logo-track span:before{content:'';width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,#11d3ff,#0f6dff);margin-right:10px;box-shadow:0 0 0 5px rgba(17,211,255,.10);}

.qv30-case-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:22px !important;align-items:stretch !important;}
.qv30-case-card{position:relative;background:#fff !important;border:1px solid rgba(11,31,61,.08) !important;border-radius:30px !important;overflow:hidden !important;box-shadow:0 20px 46px rgba(7,20,43,.08) !important;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease !important;}
.qv30-case-card:hover{transform:translateY(-6px) !important;box-shadow:0 30px 68px rgba(7,20,43,.13) !important;border-color:rgba(14,101,255,.18) !important;}
.qv30-case-image{position:relative;height:224px !important;padding:42px 12px 12px !important;background:radial-gradient(circle at 18% 0%,rgba(45,214,255,.24),transparent 32%),linear-gradient(145deg,#07152e,#0c2a50 58%,#0f4e7e) !important;text-decoration:none !important;}
.qv30-case-image:before{content:'';position:absolute;left:22px;top:20px;width:50px;height:10px;background:radial-gradient(circle at 5px 5px,#ff6b69 0 4px,transparent 5px),radial-gradient(circle at 25px 5px,#ffd064 0 4px,transparent 5px),radial-gradient(circle at 45px 5px,#29d08f 0 4px,transparent 5px);opacity:.95;}
.qv30-case-image:after{content:'';position:absolute;left:92px;right:22px;top:16px;height:18px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.10);}
.qv30-case-image img{position:relative;z-index:1;border-radius:18px !important;object-fit:cover !important;object-position:top center !important;box-shadow:0 16px 30px rgba(1,9,22,.22) !important;border:1px solid rgba(255,255,255,.16) !important;}
.qv30-case-body{padding:22px 22px 24px !important;}
.qv30-case-tag{display:inline-flex !important;align-items:center;gap:8px;margin-bottom:12px !important;padding:7px 10px !important;border-radius:999px !important;background:rgba(14,101,255,.08) !important;border:1px solid rgba(14,101,255,.10) !important;color:#0d66ff !important;font-size:11px !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;}
.qv30-case-tag:before{content:'';width:6px;height:6px;border-radius:50%;background:#15d2ff;}
.qv30-case-body h3{font-size:25px !important;letter-spacing:-.045em !important;margin-bottom:10px !important;}
.qv30-case-body p{font-size:15px !important;line-height:1.68 !important;color:#5d6d82 !important;}
.qv30-case-link{margin-top:auto;display:inline-flex !important;align-items:center !important;gap:8px !important;padding:10px 13px !important;border-radius:999px !important;background:#eef5ff !important;color:#0e2f6e !important;font-size:13px !important;font-weight:900 !important;text-decoration:none !important;}
.qv30-case-link:after{content:'↗';font-size:12px;}

.qv-projects-showcase{background:linear-gradient(180deg,#f4f8fb 0%,#edf3f7 100%) !important;padding-top:52px !important;padding-bottom:96px !important;}
.qv-project-showcase-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:30px !important;align-items:stretch !important;}
.qv-project-showcase{display:flex !important;flex-direction:column !important;gap:0 !important;overflow:hidden !important;background:#fff !important;border:1px solid rgba(11,31,61,.08) !important;border-radius:32px !important;box-shadow:0 24px 58px rgba(7,20,43,.09) !important;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease !important;}
.qv-project-showcase:hover{transform:translateY(-6px);box-shadow:0 32px 72px rgba(7,20,43,.13) !important;border-color:rgba(14,101,255,.16) !important;}
.qv-project-showcase-media{position:relative !important;margin:0 !important;border-radius:0 !important;border:0 !important;background:radial-gradient(circle at 22% 0%,rgba(45,214,255,.24),transparent 34%),linear-gradient(145deg,#07152e,#0c2a50 58%,#0f4e7e) !important;padding:44px 14px 14px !important;box-shadow:none !important;overflow:hidden !important;}
.qv-project-showcase-media:before{content:'';position:absolute;left:24px;top:21px;width:52px;height:10px;background:radial-gradient(circle at 5px 5px,#ff6b69 0 4px,transparent 5px),radial-gradient(circle at 26px 5px,#ffd064 0 4px,transparent 5px),radial-gradient(circle at 47px 5px,#29d08f 0 4px,transparent 5px);z-index:2;}
.qv-project-showcase-media:after{content:'';position:absolute;left:94px;right:24px;top:17px;height:18px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.11);z-index:2;}
.qv-project-showcase-media img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:16/9.4 !important;object-fit:cover !important;object-position:top center !important;border-radius:20px !important;border:1px solid rgba(255,255,255,.16) !important;box-shadow:0 18px 34px rgba(1,9,22,.22) !important;}
.qv-project-showcase-copy{padding:24px 26px 26px !important;display:flex !important;flex-direction:column !important;flex:1 !important;}
.qv-project-showcase-copy h2{font-size:34px !important;line-height:1 !important;letter-spacing:-.045em !important;max-width:16ch !important;margin:14px 0 12px !important;color:#071a3b !important;}
.qv-project-showcase-copy p{font-size:16px !important;line-height:1.72 !important;color:#5d6d82 !important;max-width:68ch !important;}
.qv-project-showcase .qv-project-meta{width:max-content !important;max-width:100% !important;display:inline-flex !important;align-items:center !important;gap:8px !important;padding:8px 11px !important;border-radius:999px !important;background:rgba(14,101,255,.08) !important;border:1px solid rgba(14,101,255,.10) !important;color:#0d66ff !important;font-weight:900 !important;letter-spacing:.08em !important;text-transform:uppercase !important;font-size:11px !important;}
.qv-project-showcase .qv-project-meta:before{content:'';width:6px;height:6px;border-radius:50%;background:#15d2ff;}
.qv-project-showcase-actions{display:flex !important;flex-wrap:wrap !important;gap:12px !important;margin-top:auto !important;padding-top:20px !important;}
.qv-project-showcase .qv-btn{min-height:46px !important;padding:13px 16px !important;border-radius:999px !important;}
.qv-project-showcase .qv-btn--primary{background:linear-gradient(135deg,#0f6dff,#2dd6ff) !important;border-color:transparent !important;box-shadow:0 14px 30px rgba(17,99,255,.18) !important;}
.qv-project-showcase .qv-btn--secondary{background:#f7fafc !important;border:1px solid #dbe5f1 !important;color:#11284f !important;}
@media (max-width:1180px){.qv30-case-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}.qv30-case-image{height:250px !important;}}
@media (max-width:980px){.qv-project-showcase-list{grid-template-columns:1fr !important;gap:26px !important;}.qv30-logo-track span{font-size:16px !important;}.qv-project-showcase-copy h2{font-size:32px !important;}}
@media (max-width:640px){.qv30-trusted{margin-top:44px !important;padding-top:30px !important;}.qv30-trusted-label{font-size:11px !important;line-height:1.5 !important;margin-bottom:16px !important;}.qv30-logo-track{gap:12px !important;animation-duration:26s !important;}.qv30-logo-track span{min-height:46px !important;padding:0 16px !important;font-size:14px !important;}.qv30-case-grid{grid-template-columns:1fr !important;gap:18px !important;}.qv30-case-image{height:220px !important;padding-top:40px !important;}.qv30-case-body h3{font-size:27px !important;}.qv-projects-showcase{padding-top:36px !important;padding-bottom:68px !important;}.qv-project-showcase{border-radius:24px !important;}.qv-project-showcase-media{padding:40px 10px 10px !important;}.qv-project-showcase-media img{border-radius:16px !important;aspect-ratio:16/10.2 !important;}.qv-project-showcase-copy{padding:20px 20px 22px !important;}.qv-project-showcase-copy h2{font-size:29px !important;}.qv-project-showcase-actions{display:grid !important;grid-template-columns:1fr !important;}}

/* v3.1.10 — restore classic homepage project strip, keep Séjours au Figarol in the list */
.qv30-trusted{margin-top:58px !important;padding-top:40px !important;border-top:1px solid #dde5ea !important;}
.qv30-trusted-label{display:block !important;text-align:center !important;font-size:14px !important;color:#6e7d8f !important;margin-bottom:26px !important;letter-spacing:normal !important;text-transform:none !important;font-weight:400 !important;}
.qv30-logo-strip{overflow:hidden !important;position:relative !important;padding:6px 0 !important;display:block !important;}
.qv30-logo-track{display:flex !important;align-items:center !important;gap:44px !important;min-width:max-content !important;animation:qvLogoMarquee 24s linear infinite !important;}
.qv30-logo-track span{display:flex !important;align-items:center !important;justify-content:center !important;min-width:160px !important;min-height:42px !important;padding:0 !important;border-radius:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;color:#6e7680 !important;font-weight:700 !important;letter-spacing:.02em !important;font-size:22px !important;opacity:.84 !important;text-align:center !important;white-space:nowrap !important;}
.qv30-logo-track span:before{display:none !important;content:none !important;}
@media (max-width:1100px){.qv30-logo-track{gap:30px !important}.qv30-logo-track span{min-width:140px !important;font-size:20px !important}}
@media (max-width:640px){.qv30-trusted{margin-top:58px !important;padding-top:40px !important}.qv30-trusted-label{font-size:14px !important;line-height:1.45 !important;margin-bottom:26px !important}.qv30-logo-strip:before,.qv30-logo-strip:after{width:46px !important}.qv30-logo-track{gap:22px !important;animation-duration:24s !important}.qv30-logo-track span{min-height:42px !important;padding:0 !important;font-size:18px !important}}

/* v3.1.11 — homepage moving project strip label text refined in NL / FR / EN. */

/* v3.1.13 — contact form label readability + professional packages page. */
body:not(.home) .qv-section .qv-form label{
  color:#1f86ff !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
}
body:not(.home) .qv-section .qv-form input,
body:not(.home) .qv-section .qv-form textarea{
  background:#343b4a !important;
  border-color:rgba(31,134,255,.24) !important;
  color:#ffffff !important;
}
body:not(.home) .qv-section .qv-form input::placeholder,
body:not(.home) .qv-section .qv-form textarea::placeholder{
  color:rgba(255,255,255,.62) !important;
}
body:not(.home) .qv-section .qv-success{
  color:#102543 !important;
  background:#d9f7f4 !important;
  border-color:rgba(0,194,168,.55) !important;
  font-weight:700 !important;
}
.qv-page-hero--pricing .qv-container{position:relative;overflow:hidden}
.qv-pricing-section{padding-top:78px !important;}
.qv-pricing-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);
  gap:28px;
  align-items:end;
  margin-bottom:34px;
}
.qv-pricing-head h2,
.qv-pricing-info-card h2,
.qv-pricing-included h2,
.qv-pricing-final-cta h2{
  font-family:var(--qv-display);
  color:#102543 !important;
  letter-spacing:-.045em;
  line-height:1.04;
  margin:8px 0 12px;
}
.qv-pricing-head h2{font-size:clamp(34px,4vw,58px);max-width:720px;}
.qv-pricing-head p{color:#516784 !important;max-width:680px;margin:0;font-size:18px;line-height:1.65;}
.qv-pricing-note{
  border:1px solid rgba(31,134,255,.18);
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  color:#516784;
  border-radius:22px;
  padding:22px;
  box-shadow:0 20px 44px rgba(19,40,76,.08);
  font-size:15px;
  line-height:1.65;
}
.qv-pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
.qv-pricing-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:16px;
  min-height:560px;
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(150,184,224,.26);
  background:linear-gradient(180deg,#ffffff,#f9fbff);
  box-shadow:0 22px 54px rgba(19,40,76,.10);
  overflow:hidden;
}
.qv-pricing-card:before{
  content:"";
  position:absolute;
  inset:-80px -90px auto auto;
  width:180px;
  height:180px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(0,212,255,.18),rgba(0,212,255,0) 68%);
  pointer-events:none;
}
.qv-pricing-card.is-featured{
  background:linear-gradient(160deg,#08172f,#123968 62%,#0bbdb8);
  color:#fff !important;
  transform:translateY(-10px);
  box-shadow:0 34px 86px rgba(19,40,76,.22);
  border-color:rgba(0,212,255,.34);
}
.qv-pricing-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;z-index:1;}
.qv-pricing-number{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:15px;
  background:#eef6ff;
  color:#1f86ff !important;
  font-weight:900;
}
.qv-pricing-card.is-featured .qv-pricing-number{background:rgba(255,255,255,.14);color:#65e8ff !important;}
.qv-pricing-tag{
  color:#6a7c94 !important;
  font-size:13px;
  font-weight:850;
  text-align:right;
  line-height:1.35;
}
.qv-pricing-card h3{
  font-family:var(--qv-display);
  font-size:30px;
  line-height:1.02;
  letter-spacing:-.04em;
  margin:8px 0 0;
  color:#102543 !important;
  position:relative;
  z-index:1;
}
.qv-pricing-price{
  font-family:var(--qv-display);
  font-size:26px;
  line-height:1;
  color:#1f86ff;
  letter-spacing:-.03em;
  margin-top:-4px;
  position:relative;
  z-index:1;
}
.qv-pricing-card p{color:#516784 !important;line-height:1.65;margin:0;position:relative;z-index:1;}
.qv-pricing-card ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;position:relative;z-index:1;}
.qv-pricing-card li{
  position:relative;
  padding-left:24px;
  color:#263b5c;
  font-size:15px;
  line-height:1.55;
}
.qv-pricing-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:9px;
  height:9px;
  border-radius:999px;
  background:linear-gradient(135deg,#1f86ff,#00c2a8);
}
.qv-pricing-card .qv-btn{margin-top:auto;width:100%;justify-content:center;}
.qv-pricing-card.is-featured h3,
.qv-pricing-card.is-featured .qv-pricing-price,
.qv-pricing-card.is-featured p,
.qv-pricing-card.is-featured li,
.qv-pricing-card.is-featured .qv-pricing-tag{color:#fff !important;}
.qv-pricing-card.is-featured p{color:#d8efff !important;}
.qv-pricing-card.is-featured li{color:#eef8ff !important;}
.qv-pricing-hosting-section{padding-top:32px !important;}
.qv-pricing-hosting-wrap{
  display:grid;
  grid-template-columns:.9fr 1.35fr;
  gap:24px;
  align-items:stretch;
}
.qv-pricing-info-card,
.qv-hosting-card,
.qv-pricing-included,
.qv-pricing-final-cta{
  border:1px solid rgba(150,184,224,.24);
  border-radius:28px;
  background:linear-gradient(180deg,#ffffff,#f9fbff);
  box-shadow:0 22px 54px rgba(19,40,76,.09);
  padding:28px;
}
.qv-pricing-info-card p,
.qv-hosting-card p,
.qv-pricing-final-cta p{color:#516784 !important;line-height:1.65;margin:0;}
.qv-hosting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.qv-hosting-card{padding:24px;display:flex;flex-direction:column;gap:12px;}
.qv-hosting-card h3{font-family:var(--qv-display);font-size:24px;line-height:1.05;letter-spacing:-.035em;margin:0;color:#102543 !important;}
.qv-hosting-card strong{font-family:var(--qv-display);font-size:22px;color:#1f86ff !important;}
.qv-pricing-bottom{
  display:grid;
  grid-template-columns:1fr 1.15fr;
  gap:24px;
  align-items:stretch;
}
.qv-pricing-included ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px;}
.qv-pricing-included li{position:relative;padding-left:28px;color:#263b5c;line-height:1.55;font-weight:700;}
.qv-pricing-included li:before{content:"✓";position:absolute;left:0;top:0;color:#00a889;font-weight:900;}
.qv-pricing-final-cta{background:linear-gradient(145deg,#08172f,#123968 68%,#0aa8c8);color:#fff !important;}
.qv-pricing-final-cta h2{color:#fff !important;font-size:clamp(32px,3vw,48px);}
.qv-pricing-final-cta p{color:#d8efff !important;margin-bottom:24px;}
.qv-pricing-final-cta .qv-kicker{color:#65e8ff !important;}
@media(max-width:1120px){
  .qv-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .qv-pricing-card.is-featured{transform:none;}
  .qv-pricing-hosting-wrap,.qv-pricing-bottom{grid-template-columns:1fr;}
}
@media(max-width:760px){
  .qv-pricing-head{grid-template-columns:1fr;align-items:start;}
  .qv-pricing-grid,.qv-hosting-grid{grid-template-columns:1fr;}
  .qv-pricing-card{min-height:auto;padding:24px 20px;border-radius:24px;}
  .qv-pricing-card h3{font-size:28px;}
  .qv-pricing-info-card,.qv-hosting-card,.qv-pricing-included,.qv-pricing-final-cta{border-radius:24px;padding:22px;}
}


/* v3.1.14 — keep homepage contact success visible after sending. */
#contact,
.qv30-form-success{scroll-margin-top:120px;}


/* v3.2.0 — launch readiness, stronger services/legal/contact and lead-form polish. */
.qv-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;}
.qv-form select,.qv30-select{width:100%;border:1px solid rgba(150,184,224,.32);background:#fff;color:#142844;border-radius:16px;padding:14px 16px;font:inherit;outline:none;box-shadow:0 12px 26px rgba(19,40,76,.06);}
.qv-form-error,.qv30-form-error{border:1px solid rgba(210,52,52,.28);background:rgba(255,245,245,.96);color:#8a1f1f;border-radius:18px;padding:14px 16px;font-weight:800;line-height:1.45;margin-bottom:14px;}
.qv-success,.qv30-form-success{border:1px solid rgba(0,168,137,.28);background:rgba(237,255,250,.96);color:#075e50;border-radius:18px;padding:14px 16px;font-weight:800;line-height:1.45;margin-bottom:14px;}
.qv-services-deep{padding-top:70px;}
.qv-services-deep-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;}
.qv-service-deep-card{position:relative;border:1px solid rgba(150,184,224,.25);border-radius:30px;background:linear-gradient(180deg,#ffffff,#f8fbff);box-shadow:0 24px 60px rgba(19,40,76,.08);padding:30px;display:flex;flex-direction:column;gap:16px;min-height:100%;overflow:hidden;}
.qv-service-deep-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,#1f86ff,#00c2a8,#65e8ff);opacity:.86;}
.qv-service-deep-card h2{font-family:var(--qv-display);font-size:clamp(26px,2.3vw,36px);line-height:1.04;letter-spacing:-.04em;margin:0;color:#102543;}
.qv-service-deep-card p{color:#516784;line-height:1.68;margin:0;}
.qv-service-deep-card ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.qv-service-deep-card li{position:relative;padding-left:25px;color:#263b5c;font-weight:720;line-height:1.5;}
.qv-service-deep-card li:before{content:"✓";position:absolute;left:0;top:0;color:#00a889;font-weight:900;}
.qv-service-deep-card .qv-btn{margin-top:auto;}
.qv-section--soft{background:linear-gradient(180deg,#f6f9ff,#ffffff);}
.qv-final-cta{border-radius:34px;padding:42px;background:linear-gradient(145deg,#08172f,#123968 68%,#0aa8c8);color:#fff;box-shadow:0 28px 70px rgba(13,32,68,.18);}
.qv-final-cta h2{color:#fff;font-family:var(--qv-display);font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.05em;margin:8px 0 12px;}
.qv-final-cta p{color:#d8efff;max-width:780px;line-height:1.7;margin:0 0 24px;}
.qv-final-cta .qv-kicker{color:#65e8ff;}
.qv-contact-grid--launch{align-items:start;}
.qv-contact-copy-block{display:grid;gap:22px;}
.qv-contact-copy-block h2{font-family:var(--qv-display);font-size:clamp(34px,3.5vw,54px);line-height:1;letter-spacing:-.05em;margin:0;color:#102543;}
.qv-contact-copy-block p{color:#516784;line-height:1.7;margin:0;}
.qv-contact-box--trust{border:1px solid rgba(150,184,224,.25);border-radius:24px;background:#fff;box-shadow:0 20px 48px rgba(19,40,76,.08);padding:22px;display:grid;gap:6px;}
.qv-mini-pill-row{display:flex;flex-wrap:wrap;gap:10px;}
.qv-mini-pill-row span{display:inline-flex;align-items:center;border-radius:999px;background:#eef6ff;color:#155ea8;border:1px solid rgba(31,134,255,.14);padding:8px 12px;font-size:13px;font-weight:850;}
.qv-contact-two-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.qv-contact-two-lists article{border:1px solid rgba(150,184,224,.24);background:linear-gradient(180deg,#fff,#f9fbff);border-radius:24px;padding:22px;}
.qv-contact-two-lists h3{font-family:var(--qv-display);font-size:24px;line-height:1.05;letter-spacing:-.035em;margin:0 0 12px;color:#102543;}
.qv-contact-two-lists ul,.qv-contact-two-lists ol{margin:0;padding-left:20px;color:#263b5c;line-height:1.65;font-weight:650;}
.qv-feature-list--values{gap:16px;}
.qv-feature-list--values div{align-items:flex-start;}
.qv-legal-prose h2{scroll-margin-top:120px;}
.qv-legal-prose p{line-height:1.72;}
@media(max-width:1120px){.qv-services-deep-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.qv-contact-two-lists{grid-template-columns:1fr;}}
@media(max-width:760px){.qv-services-deep-grid{grid-template-columns:1fr;}.qv-service-deep-card{padding:24px;border-radius:24px;}.qv-final-cta{border-radius:26px;padding:28px 22px;}.qv-contact-copy-block h2{font-size:34px;}.qv-form-row{grid-template-columns:1fr!important;}}

/* v3.2.1 — legal page readability + portfolio additions polish. */
.page-template-page-legal .qv-legal-card,
body:not(.home) .qv-section .qv-legal-card{
  color:#eaf4ff !important;
  background:linear-gradient(145deg,rgba(11,24,53,.94),rgba(6,13,30,.90)) !important;
  border:1px solid rgba(130,184,255,.20) !important;
  box-shadow:0 28px 70px rgba(10,24,52,.22) !important;
}
.page-template-page-legal .qv-legal-card--accent,
body:not(.home) .qv-section .qv-legal-card--accent{
  background:linear-gradient(145deg,#10233f,#263a5c 62%,#182842) !important;
}
.page-template-page-legal .qv-legal-card h2,
body:not(.home) .qv-section .qv-legal-card h2{
  color:#ffffff !important;
  text-shadow:0 1px 0 rgba(0,0,0,.10) !important;
}
.page-template-page-legal .qv-legal-card p,
body:not(.home) .qv-section .qv-legal-card p{
  color:#d7e8fb !important;
}
.page-template-page-legal .qv-legal-card strong,
body:not(.home) .qv-section .qv-legal-card strong{
  color:#ffffff !important;
}
.page-template-page-legal .qv-legal-highlight,
body:not(.home) .qv-section .qv-legal-highlight{
  background:rgba(0,212,255,.13) !important;
  border-color:rgba(0,212,255,.42) !important;
  color:#ffffff !important;
}
.page-template-page-legal .qv-legal-table th,
body:not(.home) .qv-section .qv-legal-table th{color:#b7c9e5 !important;}
.page-template-page-legal .qv-legal-table td,
body:not(.home) .qv-section .qv-legal-table td{color:#ffffff !important;}
.page-template-page-legal .qv-legal-table a,
body:not(.home) .qv-section .qv-legal-table a{color:#4ee7ff !important;}
.qv30-logo-track{animation-duration:30s !important;}
@media (max-width:1180px){.qv30-case-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media (max-width:900px){.qv30-case-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media (max-width:640px){.qv30-case-grid{grid-template-columns:1fr !important;}}


/* v3.2.2 — homepage moving project strip uses full domain names with extensions. */


/* Qavirio v3.2.4 — premium homepage insights redesign */
.qv30-blog{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(18,97,255,.10), transparent 18%),
    radial-gradient(circle at 82% 22%, rgba(0,212,255,.12), transparent 18%),
    linear-gradient(180deg,#e3e9ed 0%, #dbe3e8 100%);
}
.qv30-blog-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.qv30-blog-orb{position:absolute;border-radius:999px;filter:blur(10px);opacity:.72}
.qv30-blog-orb--1{width:280px;height:280px;left:-40px;top:18px;background:radial-gradient(circle, rgba(18,97,255,.18), rgba(18,97,255,0) 68%)}
.qv30-blog-orb--2{width:240px;height:240px;right:-40px;bottom:-30px;background:radial-gradient(circle, rgba(0,212,255,.18), rgba(0,212,255,0) 68%)}
.qv30-blog-gridline{position:absolute;inset:0;background-image:linear-gradient(rgba(11,23,48,.035) 1px, transparent 1px),linear-gradient(90deg, rgba(11,23,48,.035) 1px, transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg, rgba(0,0,0,.4), transparent 100%);opacity:.35}
.qv30-blog-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:30px;align-items:stretch;position:relative;z-index:1}
.qv30-blog-copy-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 34px 36px;
  border-radius:30px;
  min-height:100%;
  background:linear-gradient(180deg, rgba(248,251,255,.78), rgba(255,255,255,.54));
  border:1px solid rgba(112,142,186,.20);
  box-shadow:0 22px 44px rgba(17,35,67,.08);
  position:relative;
  overflow:hidden;
}
.qv30-blog-copy-card:before{content:'';position:absolute;right:-32px;top:-32px;width:160px;height:160px;border-radius:999px;background:radial-gradient(circle, rgba(18,97,255,.18), rgba(18,97,255,0) 68%)}
.qv30-blog-copy-card:after{content:'';position:absolute;left:34px;bottom:24px;width:86px;height:4px;border-radius:999px;background:linear-gradient(90deg, #1261ff, #00d4ff, transparent);opacity:.5}
.qv30-blog-copy{max-width:none}
.qv30-blog-copy h2{font-family:var(--qv-display);font-size:clamp(46px,5vw,72px);line-height:.94;letter-spacing:-.065em;margin:0 0 18px;color:#0b1730;max-width:420px}
.qv30-blog-copy p{color:#5f7185;font-size:18px;line-height:1.85;margin:0 0 26px;max-width:390px}
.qv30-blog-main-cta{
  display:inline-flex;align-items:center;gap:14px;align-self:flex-start;
  min-height:54px;padding:14px 22px;border-radius:16px;
  background:linear-gradient(135deg,#0b2144,#12356a 60%,#1a60c2);
  color:#fff;font-weight:800;box-shadow:0 18px 34px rgba(14,30,60,.12)
}
.qv30-blog-main-cta b{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(255,255,255,.12)}
.qv30-blog-main-cta:hover{transform:translateY(-2px);filter:brightness(1.05)}
.qv30-blog-grid{flex:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch}
.qv30-blog-card{
  background:linear-gradient(180deg, rgba(248,250,252,.96), rgba(244,248,251,.96));
  border-radius:28px;overflow:hidden;
  border:1px solid rgba(113,140,177,.22);
  box-shadow:0 22px 40px rgba(17,35,67,.10);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  position:relative;
}
.qv30-blog-card:before{content:'';position:absolute;left:22px;right:22px;top:0;height:3px;border-radius:999px;background:linear-gradient(90deg, rgba(18,97,255,0), rgba(18,97,255,.65), rgba(0,212,255,.7), rgba(0,212,255,0));opacity:.9;z-index:2}
.qv30-blog-card:hover{transform:translateY(-6px);box-shadow:0 28px 50px rgba(17,35,67,.14);border-color:rgba(18,97,255,.26)}
.qv30-blog-thumb{
  height:248px;
  display:block;
  background:linear-gradient(160deg,#0a1d3c 0%, #0f2a53 56%, #163a6e 100%);
  position:relative;
}
.qv30-blog-thumb:before{content:'';position:absolute;inset:14px;pointer-events:none;border-radius:24px;border:1px solid rgba(255,255,255,.08);z-index:1}
.qv30-blog-thumb:after{content:'';position:absolute;left:0;right:0;bottom:0;height:72px;background:linear-gradient(180deg, rgba(10,24,47,0), rgba(10,24,47,.24));z-index:1}
.qv30-blog-thumb img{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:0}
.qv30-blog-body{padding:24px 24px 26px}
.qv30-blog-body small{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.02em;color:#617286;margin:0 0 12px}
.qv30-blog-body small:before{content:'';width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,#1261ff,#00d4ff)}
.qv30-blog-body h3{margin:0 0 12px;font-family:var(--qv-display);font-size:44px;line-height:.94;letter-spacing:-.06em;color:#0b1730;max-width:420px}
.qv30-blog-body p{margin:0 0 18px;color:#617286;font-size:16px;line-height:1.78}
.qv30-blog-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.qv30-blog-chips span{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border-radius:999px;background:rgba(18,97,255,.08);border:1px solid rgba(18,97,255,.12);color:#0f2f63;font-size:13px;font-weight:700}
.qv30-blog-link{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:#10326c}
.qv30-blog-link span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:rgba(18,97,255,.08)}
@media (max-width:1024px){
  .qv30-blog-layout{grid-template-columns:1fr;gap:24px}
  .qv30-blog-copy-card{padding:30px 28px 32px}
  .qv30-blog-copy h2{max-width:none}
  .qv30-blog-copy p{max-width:none}
}
@media (max-width:640px){
  .qv30-blog{padding:66px 0}
  .qv30-blog-copy-card{padding:24px 22px 28px;border-radius:24px}
  .qv30-blog-copy h2{font-size:52px;max-width:270px}
  .qv30-blog-main-cta{width:100%;justify-content:space-between}
  .qv30-blog-grid{grid-template-columns:1fr;gap:20px}
  .qv30-blog-thumb{height:212px}
  .qv30-blog-body{padding:20px 20px 22px}
  .qv30-blog-body h3{font-size:34px}
}


/* Qavirio v3.2.5 — premium insights page and final polish */
.qv-page-hero--insights-premium{padding-bottom:56px !important;}
.qv-insights-hero-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:26px;align-items:stretch}
.qv-insights-hero-copy,.qv-insights-hero-panel{border:1px solid rgba(139,180,235,.14);border-radius:30px;background:linear-gradient(145deg,rgba(11,24,53,.84),rgba(6,13,30,.78));box-shadow:0 22px 60px rgba(0,0,0,.28)}
.qv-insights-hero-copy{padding:38px 34px 36px}
.qv-insights-hero-copy h1{max-width:760px}
.qv-insights-hero-copy p{max-width:760px;margin-bottom:26px}
.qv-insights-hero-panel{padding:30px 28px 30px;position:relative;overflow:hidden}
.qv-insights-hero-panel:before{content:'';position:absolute;right:-30px;top:-30px;width:180px;height:180px;border-radius:999px;background:radial-gradient(circle, rgba(0,212,255,.16), rgba(0,212,255,0) 68%)}
.qv-insights-hero-panel h3{margin:10px 0 14px;font-family:var(--qv-display);font-size:34px;line-height:1.02;letter-spacing:-.04em;color:#fff}
.qv-insights-hero-panel p{margin:0 0 14px;color:#c2d3ec;line-height:1.8}
.qv-insights-hero-panel ul{margin:0;padding-left:18px;color:#d9e8ff;line-height:1.9}
.qv-insights-topic-pills{display:flex;flex-wrap:wrap;gap:12px}
.qv-insights-topic-pills a{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border-radius:999px;border:1px solid rgba(0,212,255,.18);background:rgba(0,212,255,.06);color:#dff4ff;font-weight:700;font-size:14px}
.qv-insights-index-premium{padding-top:22px;padding-bottom:44px;background:linear-gradient(180deg,#eef3f6 0%,#f5f8fb 100%)}
.qv-insights-intro-card{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:30px 30px 28px;margin-bottom:28px;border-radius:30px;background:#fff;border:1px solid #e2ebf3;box-shadow:0 18px 46px rgba(7,31,63,.06)}
.qv-insights-intro-card h2{margin:10px 0 12px;font-family:var(--qv-display);font-size:42px;line-height:.98;letter-spacing:-.05em;color:#081c46}
.qv-insights-intro-card p{margin:0;color:#5a6a81;line-height:1.85;max-width:820px}
.qv-insights-index-cta{white-space:nowrap}
.qv-insight-grid-premium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.qv-insight-card-premium{display:flex;flex-direction:column;background:#fff;border:1px solid #e2ebf3;border-radius:28px;overflow:hidden;box-shadow:0 18px 44px rgba(7,31,63,.06);transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.qv-insight-card-premium:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(7,31,63,.10);border-color:rgba(18,97,255,.18)}
.qv-insight-thumb-premium{display:block;height:220px;position:relative;background:linear-gradient(150deg,#081a37,#102a53 60%,#1d497d)}
.qv-insight-thumb-premium img{width:100%;height:100%;object-fit:cover;display:block}
.qv-insight-thumb-premium--abstract{overflow:hidden}
.qv-insight-thumb-premium--abstract:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 82% 16%, rgba(0,212,255,.24), transparent 20%), linear-gradient(145deg,#0a1f40,#14345f 55%,#20558a)}
.qv-insight-thumb-premium--abstract span{position:absolute;border-radius:22px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.06);box-shadow:0 18px 40px rgba(0,0,0,.18)}
.qv-insight-thumb-premium--1 span:nth-child(1),.qv-insight-thumb-premium--2 span:nth-child(1),.qv-insight-thumb-premium--3 span:nth-child(1),.qv-insight-thumb-premium--4 span:nth-child(1){left:20px;top:26px;width:56%;height:74px}
.qv-insight-thumb-premium--1 span:nth-child(2),.qv-insight-thumb-premium--2 span:nth-child(2),.qv-insight-thumb-premium--3 span:nth-child(2),.qv-insight-thumb-premium--4 span:nth-child(2){right:22px;top:44px;width:30%;height:110px}
.qv-insight-thumb-premium--1 span:nth-child(3),.qv-insight-thumb-premium--2 span:nth-child(3),.qv-insight-thumb-premium--3 span:nth-child(3),.qv-insight-thumb-premium--4 span:nth-child(3){left:28px;bottom:26px;width:72%;height:18px;border-radius:999px;background:linear-gradient(90deg,#8be0ff,#1b6eff)}
.qv-insight-card-body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.qv-insight-card-body h3{margin:10px 0 12px;font-family:var(--qv-display);font-size:32px;line-height:1.02;letter-spacing:-.05em;color:#081c46}
.qv-insight-card-body p{margin:0 0 16px;color:#617087;line-height:1.75}
.qv-insight-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.qv-insight-chips span{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border-radius:999px;background:rgba(18,97,255,.08);border:1px solid rgba(18,97,255,.10);color:#0d66ff;font-size:13px;font-weight:800}
.qv-insight-link{margin-top:auto;font-weight:800;color:#0e2f6e}
.qv-insight-link span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#eef5ff;margin-left:4px}
.qv-insights-articles-premium{background:linear-gradient(180deg,#f5f8fb 0%,#eef3f6 100%)}
.qv-insight-article-premium{padding:32px 34px;border-radius:30px;background:#fff;border:1px solid #e2ebf3;box-shadow:0 18px 46px rgba(7,31,63,.06)}
.qv-insight-article-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:6px}
.qv-insight-article-premium h2{margin:10px 0 14px;color:#081c46;font-size:46px;line-height:.98;letter-spacing:-.05em;font-family:var(--qv-display)}
.qv-insight-article-premium .qv-lead{font-size:20px;color:#16345b;margin-bottom:10px;max-width:960px}
.qv-insight-article-premium p{color:#5a6a81;line-height:1.88;margin:0 0 14px;max-width:960px}
.qv-insight-back{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;background:#eef5ff;color:#0e2f6e;font-weight:800;white-space:nowrap}
.qv-insight-chips--article{margin-top:0;margin-bottom:18px}
/* subtle homepage portfolio polish */
.qv30-case-card:before{content:'';position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:999px;background:linear-gradient(90deg, rgba(18,97,255,0), rgba(18,97,255,.65), rgba(0,212,255,.72), rgba(0,212,255,0));opacity:.95;z-index:2}
.qv30-case-link{box-shadow:inset 0 0 0 1px rgba(14,47,110,.02)}
@media (max-width:1100px){
  .qv-insights-hero-grid{grid-template-columns:1fr}
  .qv-insight-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qv-insights-intro-card{display:block}
  .qv-insights-index-cta{margin-top:20px}
}
@media (max-width:780px){
  .qv-insight-grid-premium{grid-template-columns:1fr}
  .qv-insight-article-top{display:block}
  .qv-insight-back{margin-top:12px}
  .qv-insight-article-premium h2{font-size:34px}
  .qv-insights-intro-card h2{font-size:34px}
}
@media (max-width:640px){
  .qv-insights-hero-copy,.qv-insights-hero-panel,.qv-insights-intro-card,.qv-insight-card-premium,.qv-insight-article-premium{border-radius:24px}
  .qv-insights-hero-copy{padding:26px 22px 24px}
  .qv-insights-hero-panel{padding:24px 22px}
  .qv-insights-topic-pills a{font-size:13px;min-height:38px}
  .qv-insights-intro-card{padding:24px 22px 22px}
  .qv-insight-thumb-premium{height:198px}
  .qv-insight-card-body{padding:20px}
  .qv-insight-card-body h3{font-size:28px}
  .qv-insight-article-premium{padding:24px 22px}
  .qv-insight-article-premium .qv-lead{font-size:18px}
}

/* Qavirio v3.2.8 — premium cookie notice */
.qv-cookie-banner[hidden]{display:none!important}
.qv-cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:100200;display:flex;justify-content:center;pointer-events:none}
.qv-cookie-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;width:min(900px,100%);padding:20px 22px;border-radius:28px;background:linear-gradient(135deg,rgba(6,18,43,.94),rgba(7,36,70,.94) 55%,rgba(8,70,88,.92));border:1px solid rgba(255,255,255,.16);box-shadow:0 26px 80px rgba(3,13,31,.35),inset 0 1px 0 rgba(255,255,255,.10);color:#fff;overflow:hidden;pointer-events:auto;opacity:0;transform:translateY(18px) scale(.985);transition:opacity .26s ease,transform .26s ease}
.qv-cookie-banner.is-visible .qv-cookie-card{opacity:1;transform:translateY(0) scale(1)}
.qv-cookie-orb{position:absolute;right:-70px;top:-86px;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,rgba(0,212,255,.34),rgba(18,97,255,.12) 44%,transparent 70%);filter:blur(2px);pointer-events:none}
.qv-cookie-icon{position:relative;z-index:1;width:54px;height:54px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(0,212,255,.16),rgba(255,255,255,.08));border:1px solid rgba(139,224,255,.25);box-shadow:0 12px 32px rgba(0,212,255,.12)}
.qv-cookie-icon svg{width:28px;height:28px;fill:none;stroke:#8be0ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.qv-cookie-content{position:relative;z-index:1}
.qv-cookie-kicker{margin:0 0 6px;color:#8be0ff;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.qv-cookie-card h2{margin:0 0 8px;color:#fff;font-family:var(--qv-display,Georgia,serif);font-size:28px;line-height:1;letter-spacing:-.04em}
.qv-cookie-card p#qv-cookie-text{margin:0;color:rgba(238,247,255,.82);line-height:1.65;max-width:720px;font-size:15px}
.qv-cookie-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:15px}
.qv-cookie-button{appearance:none;border:0;cursor:pointer;min-height:42px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,#8be0ff,#36a4ff 45%,#1261ff);color:#041225;font-weight:900;letter-spacing:-.01em;box-shadow:0 14px 32px rgba(0,139,255,.22);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.qv-cookie-button:hover{transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 18px 38px rgba(0,139,255,.30)}
.qv-cookie-button:focus-visible,.qv-cookie-link:focus-visible{outline:3px solid rgba(139,224,255,.65);outline-offset:3px}
.qv-cookie-link{display:inline-flex;align-items:center;min-height:42px;color:#eaf7ff;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(139,224,255,.45)}
.qv-cookie-link:hover{color:#8be0ff}
@media (max-width:680px){.qv-cookie-banner{left:14px;right:14px;bottom:14px}.qv-cookie-card{grid-template-columns:1fr;padding:18px;border-radius:24px}.qv-cookie-icon{width:48px;height:48px;border-radius:16px}.qv-cookie-card h2{font-size:25px}.qv-cookie-actions{align-items:stretch}.qv-cookie-button,.qv-cookie-link{width:100%;justify-content:center;text-align:center}.qv-cookie-link{border:1px solid rgba(139,224,255,.22);border-radius:999px;background:rgba(255,255,255,.06)}}
@media (prefers-reduced-motion:reduce){.qv-cookie-card,.qv-cookie-button{transition:none!important}}



/* ==========================================================
   Qavirio 3.2.9 — WooCommerce / WordPress Tools premium polish
   Visual only. Stripe/WooCommerce business logic is untouched.
   ========================================================== */
body.woocommerce-page:not(.home),
body.woocommerce-cart:not(.home),
body.woocommerce-checkout:not(.home),
body.woocommerce-account:not(.home){background:#edf4f9;color:#0b2146}
body.woocommerce-page:not(.home) .qv-main,
body.woocommerce-cart:not(.home) .qv-main,
body.woocommerce-checkout:not(.home) .qv-main,
body.woocommerce-account:not(.home) .qv-main{background:linear-gradient(180deg,#eef5fa 0%,#f7fbfd 100%);overflow:visible;padding-top:88px}

/* Keep the denser header usable after adding the Tools link. */
body:not(.home) .qv-main-nav{gap:17px;font-size:12px}
body:not(.home) .qv-nav-contact{padding-inline:18px}

.qv-woo-hero,.qv-commerce-hero{position:relative;padding:44px 0 26px;background:linear-gradient(155deg,#071932 0%,#0b2e58 58%,#0a4264 100%);overflow:hidden}
.qv-woo-hero:before,.qv-commerce-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 15%,rgba(0,212,255,.15),transparent 28%),linear-gradient(120deg,transparent 20%,rgba(255,255,255,.025) 20.2%,transparent 20.5%);pointer-events:none}
.qv-woo-hero-card,.qv-commerce-hero-card{position:relative;z-index:1;padding:36px 42px;border:1px solid rgba(148,184,230,.16);border-radius:28px;background:linear-gradient(145deg,rgba(8,24,52,.9),rgba(5,15,34,.82));box-shadow:0 28px 70px rgba(2,10,25,.28)}
.qv-woo-hero h1,.qv-commerce-hero h1{font-family:var(--qv-display);font-size:clamp(38px,4.3vw,58px);line-height:1;letter-spacing:-.055em;margin:10px 0 12px;color:#fff;max-width:880px}
.qv-woo-hero p,.qv-commerce-hero p{margin:0;color:#bfd2ea;font-size:16px;line-height:1.65;max-width:760px}
.qv-woo-trustline{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.qv-woo-trustline span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid rgba(93,211,255,.16);background:rgba(12,39,73,.62);color:#eaf7ff;font-size:12px;font-weight:800}
.qv-woo-section,.qv-commerce-section{padding:54px 0 74px}
.qv-woo-content,.qv-commerce-content{width:min(1180px,calc(100% - 40px));max-width:1180px;color:#1c3557}

/* Single product */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);column-gap:34px;row-gap:34px;align-items:start;margin:0}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:auto;margin:0}
.woocommerce div.product div.images{padding:18px;border-radius:26px;border:1px solid #dce7f0;background:#fff;box-shadow:0 18px 50px rgba(32,62,98,.08)}
.woocommerce div.product div.images img{border-radius:18px;background:#f7fbfd}
.woocommerce div.product div.summary{padding:32px;border-radius:26px;border:1px solid #dce7f0;background:#fff;box-shadow:0 18px 50px rgba(32,62,98,.08)}
.woocommerce div.product .product_title{font-family:var(--qv-display);font-size:clamp(30px,3vw,44px);line-height:1.04;letter-spacing:-.04em;color:#081e46;margin:0 0 12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:28px;font-weight:900;color:#0d4fbe;margin:0 0 20px}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:16px;line-height:1.7;color:#5b6f87;margin-bottom:20px}
.woocommerce div.product form.cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0 18px}
.woocommerce div.product form.cart .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button:not(.is-link){border:0!important;border-radius:999px!important;background:linear-gradient(135deg,#08275d,#145fe8)!important;color:#fff!important;font-weight:850!important;min-height:46px;padding:0 22px!important;box-shadow:0 12px 26px rgba(20,95,232,.18)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.woocommerce div.product form.cart .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.wc-block-components-button:not(.is-link):hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(20,95,232,.24)!important}
.woocommerce div.product .product_meta{display:flex;flex-wrap:wrap;gap:8px 14px;padding-top:18px;border-top:1px solid #e4ecf3;color:#72839a;font-size:13px}
.woocommerce div.product .product_meta a{color:#155eef;font-weight:750}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;float:none;width:100%;padding:0;margin:8px 0 0;border:1px solid #dce7f0;border-radius:26px;background:#fff;box-shadow:0 18px 50px rgba(32,62,98,.07);overflow:hidden}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:8px;margin:0!important;padding:16px 20px 0!important;border:0!important;background:#f8fbfd}
.woocommerce div.product .woocommerce-tabs ul.tabs:before{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:0!important;background:transparent!important;border-radius:999px!important;margin:0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:10px 16px!important;border-radius:999px;color:#556b84!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{background:#eaf2ff;color:#0b4fc5!important}
.woocommerce div.product .woocommerce-tabs .panel{padding:30px 34px;margin:0;color:#455d78;line-height:1.75}
.woocommerce div.product .woocommerce-tabs .panel h2{font-family:var(--qv-display);color:#0a2149;font-size:32px;letter-spacing:-.03em}
.woocommerce .related.products{grid-column:1/-1;margin-top:10px}
.woocommerce .related.products>h2{font-family:var(--qv-display);font-size:38px;letter-spacing:-.04em;color:#0a2149;margin:0 0 22px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:18px;border:1px solid #dce7f0;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(32,62,98,.07);transition:transform .18s ease,box-shadow .18s ease}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(32,62,98,.11)}
.woocommerce ul.products li.product a img{border-radius:16px;margin-bottom:15px!important;background:#f6fafc}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--qv-display);font-size:21px!important;line-height:1.08;color:#0a2149;padding:0!important}
.woocommerce ul.products li.product .price{color:#0b4fc5!important;font-size:18px!important;font-weight:850!important}
.woocommerce ul.products li.product .button{display:inline-flex;margin-top:10px!important;min-height:40px!important;font-size:13px!important;padding:0 16px!important}

/* Stripe / express checkout containers: keep brand buttons, improve spacing only. */
.woocommerce div.product .wc-stripe-product-checkout-container,
.woocommerce div.product [class*='express-checkout'],
.woocommerce div.product [id*='payment-request']{margin-top:16px;padding-top:16px;border-top:1px solid #e7eef4}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border:1px solid #d6e4ef!important;border-top:0!important;border-radius:16px!important;background:#fff!important;color:#274461!important;box-shadow:0 10px 30px rgba(32,62,98,.07);padding:16px 20px 16px 48px!important}
.woocommerce-message:before,.woocommerce-info:before{color:#128d77!important}

/* Cart + checkout blocks/classic */
.qv-commerce-content>.woocommerce,.qv-commerce-content>.wp-block-woocommerce-cart,.qv-commerce-content>.wp-block-woocommerce-checkout{width:100%;max-width:none}
.wc-block-cart,.wc-block-checkout,.woocommerce-cart-form,.cart_totals,.woocommerce-checkout{color:#1c3557}
.wc-block-components-sidebar-layout{gap:28px!important}
.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar{padding:0!important}
.wc-block-components-sidebar,.cart_totals,.woocommerce-checkout-review-order{border:1px solid #dce7f0!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 44px rgba(32,62,98,.07);overflow:hidden}
.wc-block-cart-items,.woocommerce-cart-form{border:1px solid #dce7f0!important;border-radius:24px;background:#fff;box-shadow:0 16px 44px rgba(32,62,98,.07);overflow:hidden;padding:8px 20px}
.wc-block-cart-items .wc-block-cart-items__row{border-bottom:1px solid #e6eef4!important}
.wc-block-cart-item__image img{border-radius:12px}
.wc-block-components-product-name,.woocommerce-cart-form__cart-item .product-name a{color:#0a2149!important;font-weight:850!important;text-decoration:none!important}
.wc-block-components-product-price,.wc-block-components-totals-item__value,.woocommerce-Price-amount{color:#0b4fc5;font-weight:850}
.wc-block-components-totals-wrapper{border-color:#e6eef4!important;padding:20px!important}
.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button,.checkout-button{width:100%;justify-content:center}
.wc-block-components-checkout-step{padding:24px!important;margin-bottom:18px!important;border:1px solid #dce7f0!important;border-radius:22px;background:#fff;box-shadow:0 12px 36px rgba(32,62,98,.06)}
.wc-block-components-checkout-step__heading h2,.woocommerce-billing-fields>h3,.woocommerce-additional-fields>h3,#order_review_heading{font-family:var(--qv-display);color:#0a2149;letter-spacing:-.03em}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid #d4e1eb!important;border-radius:12px!important;background:#fbfdff!important;min-height:46px!important;color:#203b5a!important;box-shadow:none!important}
.wc-block-components-text-input input:focus,.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:#5d91f0!important;box-shadow:0 0 0 3px rgba(21,94,239,.10)!important}

/* Classic cart fallback */
.woocommerce table.shop_table{border:1px solid #dce7f0!important;border-radius:22px!important;background:#fff;overflow:hidden;box-shadow:0 14px 40px rgba(32,62,98,.06)}
.woocommerce table.shop_table th{color:#0a2149;font-weight:850}
.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:100%;padding:24px}

/* My account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px}
.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content{float:none!important;width:auto!important}
.woocommerce-MyAccount-navigation{padding:14px;border:1px solid #dce7f0;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(32,62,98,.06)}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-navigation a{display:block;padding:12px 14px;border-radius:12px;color:#34516f;font-weight:750}
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover{background:#eaf2ff;color:#0b4fc5}
.woocommerce-MyAccount-content{padding:28px;border:1px solid #dce7f0;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(32,62,98,.06);color:#455d78}

@media(max-width:980px){
  body:not(.home) .qv-main-nav{font-size:13px;gap:0}
  .woocommerce div.product{grid-template-columns:1fr}
  .woocommerce div.product .woocommerce-tabs,.woocommerce .related.products{grid-column:1}
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-account .woocommerce{grid-template-columns:1fr}
}
@media(max-width:640px){
  body.woocommerce-page:not(.home) .qv-main,body.woocommerce-cart:not(.home) .qv-main,body.woocommerce-checkout:not(.home) .qv-main,body.woocommerce-account:not(.home) .qv-main{padding-top:78px}
  .qv-woo-hero,.qv-commerce-hero{padding:24px 0 16px}
  .qv-woo-hero-card,.qv-commerce-hero-card{padding:24px 20px;border-radius:20px}
  .qv-woo-hero h1,.qv-commerce-hero h1{font-size:36px}
  .qv-woo-section,.qv-commerce-section{padding:30px 0 50px}
  .qv-woo-content,.qv-commerce-content{width:min(100% - 24px,1180px)}
  .woocommerce div.product div.images,.woocommerce div.product div.summary{padding:16px;border-radius:20px}
  .woocommerce div.product .woocommerce-tabs .panel{padding:22px 18px}
  .woocommerce ul.products{grid-template-columns:1fr}
  .wc-block-cart-items,.woocommerce-cart-form{padding:4px 10px;border-radius:18px!important}
  .wc-block-components-checkout-step{padding:18px!important}
}

/* Product title is already presented in the Qavirio commerce hero. */
body.single-product .woocommerce div.product div.summary .product_title{display:none!important}


/* v3.2.10 — requested Woo / Tools visual cleanup */
.qv-woo-hero,.qv-commerce-hero{padding:34px 0 22px}
.qv-woo-hero-card,.qv-commerce-hero-card{padding:30px 38px}
.qv-woo-hero h1,.qv-commerce-hero h1{margin-top:0}

.woocommerce div.product form.cart .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button:not(.is-link){display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.15!important}

.woocommerce ul.products li.product .button{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;width:100%;padding:0 18px!important;min-height:48px!important;font-size:14px!important}

@media(max-width:640px){
  .qv-woo-hero,.qv-commerce-hero{padding:20px 0 14px}
  .qv-woo-hero-card,.qv-commerce-hero-card{padding:22px 18px}
}


/* v3.2.11 — header spacing + theme author cleanup */
.qv-woo-hero,.qv-commerce-hero{padding-top:52px;padding-bottom:24px}
.qv-woo-hero-card,.qv-commerce-hero-card{padding:38px 40px 30px}
.qv-woo-hero h1,.qv-commerce-hero h1{margin-top:6px}
.qv-woo-trustline{margin-top:20px}

@media(max-width:640px){
  .qv-woo-hero,.qv-commerce-hero{padding-top:30px;padding-bottom:16px}
  .qv-woo-hero-card,.qv-commerce-hero-card{padding:26px 20px 22px}
  .qv-woo-hero h1,.qv-commerce-hero h1{margin-top:4px}
}


/* v3.3.0 — definitive WooCommerce cart desktop layout */
body.woocommerce-cart .qv-commerce-section{
  background:linear-gradient(180deg,#eef5fa 0%,#f7fafc 100%);
  padding:50px 0 78px;
  min-height:560px;
}
body.woocommerce-cart .qv-commerce-content{width:min(1180px,calc(100% - 40px));max-width:1180px;margin-inline:auto}
body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.62fr) minmax(330px,.78fr)!important;
  gap:28px!important;
  align-items:start!important;
  flex-wrap:nowrap!important;
}
body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,
body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar,
body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar{
  width:100%!important;
  max-width:none!important;
  flex-basis:auto!important;
  margin:0!important;
  min-width:0!important;
}
body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wc-block-components-sidebar{
  position:sticky;
  top:104px;
}
body.woocommerce-cart .wc-block-cart-items{
  padding:12px 24px!important;
  border-radius:26px!important;
  background:#fff!important;
}
body.woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row{padding:22px 0!important}
body.woocommerce-cart .wc-block-cart-item__image{width:96px!important}
body.woocommerce-cart .wc-block-cart-item__image img{width:88px!important;height:88px!important;object-fit:cover!important;border-radius:16px!important}
body.woocommerce-cart .wc-block-components-sidebar{border-radius:26px!important}
body.woocommerce-cart .wc-block-cart__totals-title{padding:20px 22px 12px!important;font-weight:900!important;color:#0a2149!important}
body.woocommerce-cart .wc-block-cart__submit-container{padding:0 20px 20px!important}
body.woocommerce-cart .wc-block-cart__submit-button{min-height:52px!important;border-radius:999px!important;font-weight:900!important}
body.woocommerce-cart .wc-block-components-express-payment__event-buttons{gap:9px!important}

@media(max-width:900px){
  body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout,
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar-layout{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar{position:static}
}
@media(max-width:640px){
  body.woocommerce-cart .qv-commerce-section{padding:30px 0 54px}
  body.woocommerce-cart .qv-commerce-content{width:min(100% - 22px,1180px)}
  body.woocommerce-cart .wc-block-cart-items{padding:6px 12px!important;border-radius:20px!important}
  body.woocommerce-cart .wc-block-cart-item__image{width:70px!important}
  body.woocommerce-cart .wc-block-cart-item__image img{width:64px!important;height:64px!important}
}


/* ============================================================
   Qavirio v3.3.2 — CSS WAVE GRID + SUBTLE CODE HERO
   No hero background image is used in this layer.
   ============================================================ */
.qv30-hero{
  isolation:isolate;
  background:linear-gradient(180deg,#031126 0%,#061a38 48%,#04142d 100%);
}
.qv30-hero-bg{
  overflow:hidden;
  opacity:1;
  background:
    radial-gradient(circle at 82% 28%,rgba(38,148,255,.15),transparent 24%),
    radial-gradient(circle at 18% 24%,rgba(15,93,210,.12),transparent 26%),
    linear-gradient(180deg,#031126 0%,#061b39 52%,#04142d 100%);
}
.qv30-hero-bg:before,
.qv30-hero-bg:after{
  content:"";
  position:absolute;
  pointer-events:none;
}
/* Perspective digital grid field */
.qv30-hero-bg:before{
  left:-20%;
  right:-20%;
  bottom:-38%;
  height:86%;
  background-image:
    repeating-linear-gradient(90deg,rgba(40,151,255,.22) 0 1px,transparent 1px 38px),
    repeating-linear-gradient(0deg,rgba(52,167,255,.16) 0 1px,transparent 1px 34px);
  transform-origin:50% 100%;
  transform:perspective(780px) rotateX(64deg) rotateZ(-2.6deg) scale(1.34);
  opacity:.56;
  mask-image:linear-gradient(to top,rgba(0,0,0,.95) 12%,rgba(0,0,0,.72) 46%,transparent 88%);
  animation:qvTechGridDrift 18s ease-in-out infinite alternate;
}
/* Curved luminous wave field */
.qv30-hero-bg:after{
  width:122%;
  height:56%;
  left:-10%;
  bottom:4%;
  border-radius:50%;
  border-top:1px solid rgba(70,178,255,.36);
  box-shadow:
    0 -20px 45px rgba(18,112,255,.08),
    0 -2px 0 rgba(51,173,255,.16),
    0 -52px 90px rgba(15,94,210,.07);
  transform:rotate(-6deg) skewX(-8deg);
  opacity:.72;
  animation:qvTechWaveFloat 12s ease-in-out infinite alternate;
}
.qv30-hero-overlay{
  background:
    linear-gradient(90deg,rgba(2,13,31,.76) 0%,rgba(2,13,31,.43) 47%,rgba(2,13,31,.24) 100%),
    radial-gradient(circle at 52% 60%,transparent 0%,rgba(2,12,28,.10) 62%,rgba(2,12,28,.32) 100%);
}
/* Add finer data rays without images */
.qv30-hero > .qv-code-motion--hero:before,
.qv30-hero > .qv-code-motion--hero:after{
  content:"";
  position:absolute;
  inset:auto;
  pointer-events:none;
  z-index:0;
}
.qv30-hero > .qv-code-motion--hero:before{
  width:70%;
  height:34%;
  right:-8%;
  top:30%;
  background:
    repeating-linear-gradient(172deg,transparent 0 26px,rgba(65,176,255,.10) 27px,transparent 28px),
    radial-gradient(ellipse at center,rgba(24,130,255,.09),transparent 68%);
  transform:rotate(-3deg);
  opacity:.58;
  mask-image:linear-gradient(90deg,transparent,black 28%,black 82%,transparent);
}
.qv30-hero > .qv-code-motion--hero:after{
  width:440px;
  height:440px;
  right:4%;
  top:14%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(50,169,255,.09),transparent 66%);
  filter:blur(8px);
  opacity:.68;
}
/* Code remains atmospheric rather than pill-like */
.qv30-hero .qv-tech-code{
  position:absolute;
  z-index:0;
  display:block;
  max-width:330px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  font-size:11px;
  line-height:1.7;
  letter-spacing:.01em;
  color:rgba(92,185,255,.28);
  text-shadow:0 0 18px rgba(28,132,255,.12);
  white-space:nowrap;
  opacity:.75;
  animation:qvTechCodeFloat 15s ease-in-out infinite alternate;
}
.qv30-hero .qv-tech-code--1{top:22%;left:4%;transform:rotate(-2deg)}
.qv30-hero .qv-tech-code--2{top:19%;right:4%;animation-delay:-4s}
.qv30-hero .qv-tech-code--3{top:45%;right:8%;color:rgba(91,203,255,.24);animation-delay:-8s}
.qv30-hero .qv-tech-code--4{bottom:21%;left:6%;color:rgba(78,167,255,.22);animation-delay:-6s}
.qv30-hero .qv-tech-code--5{bottom:11%;right:11%;color:rgba(105,198,255,.20);animation-delay:-10s}
/* Existing code chips become slightly quieter in the hero */
.qv30-hero > .qv-code-motion--hero .qv-code-chip{
  background:rgba(4,20,44,.42) !important;
  border-color:rgba(87,178,255,.13) !important;
  color:rgba(225,244,255,.82) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.08) !important;
  backdrop-filter:blur(8px);
}
.qv30-hero > .qv-code-motion--hero .qv-code-shape{
  opacity:.56;
}
.qv30-hero > .qv30-hero-motion{
  opacity:.74;
  mix-blend-mode:screen;
}
.qv30-hero-inner,.qv30-services-wrap{position:relative;z-index:4}

@keyframes qvTechGridDrift{
  0%{transform:perspective(780px) rotateX(64deg) rotateZ(-2.6deg) scale(1.34) translate3d(-1.5%,0,0)}
  100%{transform:perspective(780px) rotateX(64deg) rotateZ(1deg) scale(1.38) translate3d(2%,1.5%,0)}
}
@keyframes qvTechWaveFloat{
  0%{transform:rotate(-6deg) skewX(-8deg) translate3d(-1%,0,0)}
  100%{transform:rotate(-3deg) skewX(-5deg) translate3d(2%,-3%,0)}
}
@keyframes qvTechCodeFloat{
  0%{translate:0 0;opacity:.42}
  100%{translate:8px -8px;opacity:.76}
}

@media(max-width:980px){
  .qv30-hero-bg:before{height:72%;bottom:-30%;opacity:.43;transform:perspective(720px) rotateX(65deg) scale(1.5)}
  .qv30-hero .qv-tech-code--1,.qv30-hero .qv-tech-code--4{left:2%}
  .qv30-hero .qv-tech-code--2,.qv30-hero .qv-tech-code--5{right:2%}
}
@media(max-width:640px){
  .qv30-hero-bg:before{height:64%;bottom:-23%;opacity:.34;background-size:auto}
  .qv30-hero-bg:after{width:150%;left:-25%;bottom:7%;opacity:.46}
  .qv30-hero .qv-tech-code{font-size:9px;opacity:.34;max-width:190px}
  .qv30-hero .qv-tech-code--2,.qv30-hero .qv-tech-code--4,.qv30-hero .qv-tech-code--5{display:none}
  .qv30-hero .qv-tech-code--1{top:18%;left:3%}
  .qv30-hero .qv-tech-code--3{top:48%;right:2%}
}
@media(prefers-reduced-motion:reduce){
  .qv30-hero-bg:before,.qv30-hero-bg:after,.qv30-hero .qv-tech-code{animation:none !important}
}


/* ============================================================
   Qavirio v3.3.3 — homepage hero tuned closer to the reference
   Keeps the CSS-only approach, but makes the look more electric,
   cleaner and more premium-tech like the supplied example.
   ============================================================ */
body.home .qv30-hero{
  padding-top:148px !important;
  padding-bottom:42px !important;
  background:linear-gradient(180deg,#020813 0%,#031126 42%,#071a36 100%) !important;
}
body.home .qv30-hero-inner{
  min-height:500px;
  grid-template-columns:minmax(0,660px) minmax(0,360px);
  gap:58px;
}
body.home .qv30-hero-copy{position:relative}
body.home .qv30-hero-copy:before{
  content:"";
  position:absolute;
  left:-38px;
  top:-12px;
  width:260px;
  height:160px;
  background:radial-gradient(circle,rgba(39,145,255,.16) 0%,rgba(39,145,255,.06) 42%,transparent 74%);
  filter:blur(12px);
  z-index:0;
  pointer-events:none;
}
body.home .qv30-kicker{position:relative;z-index:1;color:#7ccaff;letter-spacing:.22em}
body.home .qv30-hero-copy h1{
  position:relative;z-index:1;
  max-width:700px;
  font-size:clamp(60px,6.9vw,86px);
  line-height:.93;
  letter-spacing:-.07em;
  margin:14px 0 18px;
}
body.home .qv30-hero-copy p{
  position:relative;z-index:1;
  max-width:640px;
  color:#d7e5f5;
  font-size:18px;
  line-height:1.72;
}
body.home .qv30-btn--gold{box-shadow:0 14px 34px rgba(246,195,49,.16),0 10px 20px rgba(0,0,0,.14)}
body.home .qv30-btn--ghost{background:rgba(255,255,255,.06);border-color:rgba(124,202,255,.20)}

body.home .qv30-hero-bg{
  background:
    radial-gradient(circle at 18% 18%,rgba(35,154,255,.12),transparent 22%),
    radial-gradient(circle at 76% 18%,rgba(30,120,255,.10),transparent 22%),
    radial-gradient(circle at 56% 72%,rgba(18,97,230,.10),transparent 24%),
    linear-gradient(180deg,#020813 0%,#031126 44%,#061633 100%) !important;
}
/* large electric mesh / wave field */
body.home .qv30-hero-bg:before{
  left:-8%;
  right:-8%;
  bottom:-14%;
  height:66%;
  background-image:
    radial-gradient(82% 112% at 15% 100%, transparent 61%, rgba(74,171,255,.34) 61.8%, transparent 62.6%),
    radial-gradient(86% 118% at 34% 104%, transparent 60%, rgba(61,157,255,.30) 60.8%, transparent 61.6%),
    radial-gradient(90% 118% at 54% 106%, transparent 59%, rgba(50,148,255,.30) 59.8%, transparent 60.6%),
    radial-gradient(86% 116% at 75% 100%, transparent 58%, rgba(64,173,255,.26) 58.8%, transparent 59.6%),
    radial-gradient(76% 110% at 92% 96%, transparent 58%, rgba(66,174,255,.24) 58.8%, transparent 59.6%),
    repeating-linear-gradient(90deg,rgba(47,167,255,.20) 0 1px,transparent 1px 24px),
    repeating-linear-gradient(0deg,rgba(47,167,255,.12) 0 1px,transparent 1px 22px);
  transform-origin:50% 100%;
  transform:perspective(960px) rotateX(73deg) rotateZ(-4deg) scale(1.12);
  opacity:.82;
  mask-image:linear-gradient(to top,rgba(0,0,0,.96) 10%,rgba(0,0,0,.78) 44%,transparent 88%);
  filter:drop-shadow(0 0 22px rgba(34,147,255,.18));
  animation:qvRefMeshDrift 18s ease-in-out infinite alternate;
}
/* long floating wave line above the mesh */
body.home .qv30-hero-bg:after{
  width:132%;
  height:30%;
  left:-10%;
  bottom:28%;
  background:
    radial-gradient(100% 140% at 18% 100%, transparent 66%, rgba(82,190,255,.20) 66.7%, transparent 67.4%),
    radial-gradient(100% 140% at 58% 100%, transparent 66%, rgba(82,190,255,.16) 66.7%, transparent 67.4%),
    radial-gradient(100% 140% at 92% 100%, transparent 66%, rgba(82,190,255,.13) 66.7%, transparent 67.4%);
  transform:rotate(-4deg);
  opacity:.86;
  animation:qvRefWaveLine 13s ease-in-out infinite alternate;
}
body.home .qv30-hero-overlay{
  background:
    linear-gradient(90deg,rgba(2,10,23,.84) 0%,rgba(2,10,23,.38) 46%,rgba(2,10,23,.16) 100%),
    radial-gradient(circle at 34% 24%,rgba(34,145,255,.11),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0) 36%) !important;
}
/* remove chunky chips/shapes: keep it sleek like the reference */
body.home .qv30-hero > .qv-code-motion--hero .qv-code-chip,
body.home .qv30-hero > .qv-code-motion--hero .qv-code-shape,
body.home .qv30-hero > .qv-code-motion--hero .qv-code-line{
  display:none !important;
}
body.home .qv30-hero > .qv-code-motion--hero:before{
  width:46%;
  height:22%;
  left:2%;
  top:12%;
  background:radial-gradient(circle,rgba(41,150,255,.08) 0%,rgba(41,150,255,0) 72%);
  opacity:.95;
  mask-image:none;
  transform:none;
}
body.home .qv30-hero > .qv-code-motion--hero:after{
  width:460px;
  height:460px;
  right:-2%;
  top:18%;
  background:radial-gradient(circle,rgba(45,162,255,.12) 0%,rgba(45,162,255,0) 66%);
  filter:blur(10px);
  opacity:.78;
}
body.home .qv30-hero .qv-tech-code{
  max-width:230px;
  font-size:11px;
  line-height:1.6;
  letter-spacing:.015em;
  color:rgba(108,194,255,.38);
  text-shadow:0 0 16px rgba(25,117,255,.12);
  opacity:.86;
  white-space:pre-line;
}
body.home .qv30-hero .qv-tech-code--1{top:24%;left:4%;transform:none}
body.home .qv30-hero .qv-tech-code--2{top:16%;right:7%}
body.home .qv30-hero .qv-tech-code--3{top:26%;right:10%;max-width:180px}
body.home .qv30-hero .qv-tech-code--4{bottom:16%;left:5%;max-width:260px}
body.home .qv30-hero .qv-tech-code--5{bottom:16%;right:8%;max-width:200px}
body.home .qv30-hero .qv-tech-code--2{display:none} /* cleaner like the reference */

body.home .qv30-hero-proof{
  width:min(390px,100%);
  gap:12px;
  padding:20px;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(8,20,46,.58),rgba(6,17,40,.42));
  border-color:rgba(108,194,255,.13);
  box-shadow:0 28px 68px rgba(0,8,24,.28), inset 0 1px 0 rgba(255,255,255,.03);
}
body.home .qv30-proof-item{
  padding:17px 18px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
  border:1px solid rgba(118,194,255,.08);
}
body.home .qv30-proof-item strong{font-size:16px}

body.home .qv30-services-wrap{margin-top:34px}
body.home .qv30-services-grid{gap:20px}
body.home .qv30-service-card{
  min-height:198px;
  padding:28px 24px;
  border-radius:28px;
  border:1px solid rgba(118,194,255,.10);
  box-shadow:0 24px 54px rgba(0,8,24,.22);
}
body.home .qv30-service-card--dark{background:linear-gradient(180deg,rgba(11,42,84,.94),rgba(8,25,52,.92))}
body.home .qv30-service-card--blue{background:linear-gradient(180deg,rgba(43,126,181,.96),rgba(17,79,130,.94))}
body.home .qv30-service-card--light{background:linear-gradient(180deg,rgba(69,103,157,.96),rgba(28,57,105,.94))}
body.home .qv30-service-card--overlay{background:linear-gradient(180deg,rgba(21,38,74,.86),rgba(11,25,49,.84));backdrop-filter:blur(8px)}
body.home .qv30-service-card h3{font-size:27px;line-height:1.06}
body.home .qv30-service-card p{font-size:15px;line-height:1.65}
body.home .qv30-service-icon{background:rgba(255,255,255,.10)}
body.home .qv30-service-arrow{background:rgba(255,255,255,.12)}

@keyframes qvRefMeshDrift{
  0%{transform:perspective(960px) rotateX(73deg) rotateZ(-4deg) scale(1.12) translate3d(-1%,0,0)}
  100%{transform:perspective(960px) rotateX(73deg) rotateZ(-2deg) scale(1.16) translate3d(1.4%,1.2%,0)}
}
@keyframes qvRefWaveLine{
  0%{transform:rotate(-4deg) translate3d(-1%,0,0)}
  100%{transform:rotate(-1.5deg) translate3d(1.8%,-1%,0)}
}

@media (max-width:1100px){
  body.home .qv30-hero-inner{grid-template-columns:1fr;gap:28px;min-height:auto}
  body.home .qv30-hero-side{justify-content:flex-start}
  body.home .qv30-hero-proof{width:100%}
}
@media (max-width:820px){
  body.home .qv30-hero{padding-top:126px !important;padding-bottom:30px !important}
  body.home .qv30-hero-copy h1{font-size:52px}
  body.home .qv30-hero-copy p{font-size:16px}
  body.home .qv30-hero-bg:before{height:58%;bottom:-10%;opacity:.68}
  body.home .qv30-hero-bg:after{bottom:22%;opacity:.64}
  body.home .qv30-hero .qv-tech-code--3,
  body.home .qv30-hero .qv-tech-code--5{display:none}
}
@media (max-width:640px){
  body.home .qv30-hero-copy h1{font-size:42px}
  body.home .qv30-hero-bg:before{height:54%;bottom:-6%;opacity:.56}
  body.home .qv30-hero-bg:after{width:150%;left:-18%;bottom:18%;opacity:.48}
  body.home .qv30-hero .qv-tech-code{font-size:9px;max-width:160px;opacity:.46}
  body.home .qv30-hero .qv-tech-code--4,
  body.home .qv30-hero .qv-tech-code--5{display:none}
}
@media (prefers-reduced-motion:reduce){
  body.home .qv30-hero-bg:before,
  body.home .qv30-hero-bg:after,
  body.home .qv30-hero .qv-tech-code{animation:none !important}
}


/* ============================================================
   Qavirio v3.3.4 — WOW homepage polish + mobile refinement
   Stronger premium visual impact, cleaner mobile stacking.
   ============================================================ */
body.home .qv30-hero{
  padding-top:154px !important;
  padding-bottom:50px !important;
  background:linear-gradient(180deg,#02070f 0%,#031126 40%,#071a35 100%) !important;
}
body.home .qv30-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    radial-gradient(circle at 18% 22%, rgba(58,180,255,.14) 0%, transparent 26%),
    radial-gradient(circle at 62% 40%, rgba(26,114,255,.10) 0%, transparent 24%),
    radial-gradient(circle at 86% 18%, rgba(90,210,255,.10) 0%, transparent 18%);
  mix-blend-mode:screen;
}
body.home .qv30-hero-copy h1{
  text-shadow:0 6px 28px rgba(7,23,48,.24);
}
body.home .qv30-hero-copy p{max-width:620px}
body.home .qv30-hero-actions{gap:16px;margin-top:34px}
body.home .qv30-btn{
  min-height:58px;
  padding:17px 26px;
  font-size:16px;
}
body.home .qv30-btn--gold{
  box-shadow:0 18px 38px rgba(246,195,49,.20),0 12px 24px rgba(0,0,0,.18);
}
body.home .qv30-btn--gold:hover,
body.home .qv30-btn--ghost:hover{transform:translateY(-3px)}
body.home .qv30-btn--ghost{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.05));
  border-color:rgba(124,202,255,.24);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}

body.home .qv30-hero-bg:before{
  opacity:.9;
  filter:drop-shadow(0 0 30px rgba(35,145,255,.20));
}
body.home .qv30-hero-bg:after{opacity:.92}
body.home .qv30-hero .qv-tech-code{opacity:.9}
body.home .qv30-hero .qv-tech-code--1,
body.home .qv30-hero .qv-tech-code--4{color:rgba(117,206,255,.42)}

body.home .qv30-hero-proof{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(11,26,58,.72),rgba(7,19,43,.54));
  border:1px solid rgba(120,198,255,.14);
  box-shadow:0 30px 72px rgba(0,8,24,.34), inset 0 1px 0 rgba(255,255,255,.04);
}
body.home .qv30-hero-proof:before{
  content:"";
  position:absolute;
  inset:-10% -12% auto auto;
  width:180px;height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(75,194,255,.14),transparent 68%);
  filter:blur(8px);
  pointer-events:none;
}
body.home .qv30-proof-item{
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
}
body.home .qv30-proof-item:hover{
  transform:translateX(4px);
  border-color:rgba(120,198,255,.18);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.04));
}

body.home .qv30-services-wrap{margin-top:38px}
body.home .qv30-services-grid{gap:22px}
body.home .qv30-service-card{
  min-height:202px;
  border:1px solid rgba(118,194,255,.11);
  box-shadow:0 24px 58px rgba(0,9,26,.26);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
body.home .qv30-service-card:hover{
  transform:translateY(-6px);
  box-shadow:0 34px 74px rgba(0,10,28,.32);
  border-color:rgba(118,194,255,.20);
}
body.home .qv30-service-card:before{
  content:"";
  position:absolute;
  inset:auto -10% -34% auto;
  width:180px;height:180px;border-radius:50%;
  background:radial-gradient(circle,rgba(95,196,255,.15),transparent 70%);
  pointer-events:none;
}
body.home .qv30-service-card--dark{background:linear-gradient(180deg,#0c2e57 0%,#081b38 100%)}
body.home .qv30-service-card--blue{background:linear-gradient(180deg,#2c86c0 0%,#11538e 100%)}
body.home .qv30-service-card--light{background:linear-gradient(180deg,#5573ab 0%,#274479 100%)}
body.home .qv30-service-card--overlay{background:linear-gradient(180deg,rgba(22,41,78,.90),rgba(10,22,43,.88))}
body.home .qv30-service-card h3{font-size:28px}
body.home .qv30-service-arrow{background:rgba(255,255,255,.14)}

/* Give the rest of the homepage a more premium rhythm */
body.home .qv30-intro,
body.home .qv30-cases,
body.home .qv30-blog,
body.home .qv30-contact{padding:84px 0}
body.home .qv30-intro{
  background:
    radial-gradient(circle at 18% 0%, rgba(146,212,255,.12), transparent 18%),
    linear-gradient(180deg,#fbfcfd 0%,#f4f7fa 100%);
}
body.home .qv30-intro-pill{box-shadow:0 18px 34px rgba(13,28,59,.10)}
body.home .qv30-case-card,
body.home .qv30-blog-card{
  box-shadow:0 18px 40px rgba(10,24,52,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}
body.home .qv30-case-card:hover,
body.home .qv30-blog-card:hover{
  transform:translateY(-6px);
  box-shadow:0 26px 52px rgba(10,24,52,.12);
}
body.home .qv30-contact{
  background:
    radial-gradient(circle at 10% 50%, rgba(45,150,255,.10), transparent 10%),
    radial-gradient(circle at 92% 44%, rgba(45,150,255,.12), transparent 10%),
    linear-gradient(180deg,#06152f 0%,#041126 100%);
}
body.home .qv30-contact-copy,
body.home .qv30-contact-form{
  box-shadow:0 22px 54px rgba(0,9,26,.20);
}

/* Better integration of plugin teaser on homepage */
body.home .qwt-teaser{margin-top:18px !important;margin-bottom:0 !important}
body.home .qwt-teaser--premium{
  box-shadow:0 18px 44px rgba(10,24,52,.10);
  border-radius:28px !important;
}

/* ----------------- Mobile refinement ----------------- */
@media (max-width:1100px){
  body.home .qv30-services-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  body.home .qv30-service-card--light{grid-row:auto !important}
}
@media (max-width:820px){
  body.home .qv30-hero{
    padding-top:122px !important;
    padding-bottom:28px !important;
  }
  body.home .qv30-hero-inner,
  body.home .qv30-intro-inner,
  body.home .qv30-contact-grid{gap:24px !important}
  body.home .qv30-hero-copy,
  body.home .qv30-intro-inner,
  body.home .qv30-section-head,
  body.home .qv30-contact-copy{text-align:center}
  body.home .qv30-hero-copy:before{left:50%;transform:translateX(-50%);top:-16px;width:220px;height:140px}
  body.home .qv30-hero-copy h1{font-size:48px;max-width:100%}
  body.home .qv30-hero-copy p{font-size:16px;max-width:100%;margin:0 auto}
  body.home .qv30-hero-actions{display:grid;grid-template-columns:1fr;max-width:420px;margin:28px auto 0}
  body.home .qv30-btn{width:100%}
  body.home .qv30-hero-side{justify-content:center !important}
  body.home .qv30-hero-proof{width:min(520px,100%);margin:0 auto}
  body.home .qv30-services-wrap{margin-top:24px}
  body.home .qv30-services-grid{grid-template-columns:1fr !important;gap:16px !important}
  body.home .qv30-service-card,
  body.home .qv30-service-card--dark,
  body.home .qv30-service-card--blue,
  body.home .qv30-service-card--light,
  body.home .qv30-service-card--overlay{grid-column:auto !important;grid-row:auto !important;min-height:unset;padding:24px 20px}
  body.home .qv30-service-card h3{font-size:24px}
  body.home .qv30-service-card p{max-width:100%}
  body.home .qv30-service-arrow{right:16px;bottom:16px}
  body.home .qv30-logo-strip,
  body.home .qv30-cases-grid,
  body.home .qv30-blog-grid{grid-template-columns:1fr !important;gap:18px !important}
  body.home .qv30-intro,
  body.home .qv30-cases,
  body.home .qv30-blog,
  body.home .qv30-contact{padding:62px 0}
  body.home .qv30-intro-pill{margin-top:26px;width:100%;max-width:360px}
  body.home .qv30-contact-form{padding:18px}
}
@media (max-width:640px){
  body.home .qv30-hero{padding-top:108px !important;padding-bottom:22px !important}
  body.home .qv30-kicker{font-size:11px;letter-spacing:.18em}
  body.home .qv30-hero-copy h1{font-size:38px;line-height:.95;margin:12px 0 14px}
  body.home .qv30-hero-copy p{font-size:15px;line-height:1.68}
  body.home .qv30-hero-bg:before{height:48%;bottom:-4%;opacity:.48}
  body.home .qv30-hero-bg:after{width:165%;left:-28%;bottom:14%;opacity:.42}
  body.home .qv30-hero .qv-tech-code,
  body.home .qv30-hero .qv-tech-code--1,
  body.home .qv30-hero .qv-tech-code--3,
  body.home .qv30-hero .qv-tech-code--4,
  body.home .qv30-hero .qv-tech-code--5{display:none !important}
  body.home .qv30-hero-proof{padding:16px;border-radius:22px}
  body.home .qv30-proof-item{padding:14px 14px;gap:12px}
  body.home .qv30-proof-item strong{font-size:14px}
  body.home .qv30-service-card{border-radius:22px}
  body.home .qv30-service-icon{width:46px;height:46px;border-radius:14px}
  body.home .qv30-intro-inner h2,
  body.home .qv30-section-head h2,
  body.home .qv30-contact-copy h2{font-size:34px !important;line-height:1.04 !important}
  body.home .qv30-intro-inner p,
  body.home .qv30-section-head p,
  body.home .qv30-contact-copy p{font-size:15px !important;line-height:1.72 !important}
  body.home .qv30-case-card,
  body.home .qv30-blog-card{border-radius:22px}
  body.home .qv30-contact-form input,
  body.home .qv30-contact-form select,
  body.home .qv30-contact-form textarea{font-size:16px !important}
  body.home .qwt-teaser--premium{padding:22px 18px !important}
}
@media (prefers-reduced-motion:reduce){
  body.home .qv30-service-card,
  body.home .qv30-case-card,
  body.home .qv30-blog-card,
  body.home .qv30-proof-item{transition:none !important}
}


/* ============================================================
   Qavirio v3.3.5 — SPECTACLE TECH HERO
   More luminous code, denser upper-half detail, premium data glow.
   ============================================================ */
body.home .qv30-hero{min-height:920px}
body.home .qv30-hero:after{
  content:"";
  position:absolute;
  inset:70px 0 auto 0;
  height:420px;
  pointer-events:none;
  z-index:1;
  background:
    linear-gradient(105deg,transparent 0 12%,rgba(31,153,255,.06) 12.2%,transparent 12.5% 38%,rgba(31,153,255,.05) 38.2%,transparent 38.5% 69%,rgba(86,207,255,.05) 69.2%,transparent 69.5%),
    radial-gradient(circle at 16% 32%,rgba(52,184,255,.12),transparent 9%),
    radial-gradient(circle at 76% 24%,rgba(53,137,255,.12),transparent 10%);
  mix-blend-mode:screen;
  opacity:.95;
}
body.home .qv30-hero-bg{
  background:
    radial-gradient(circle at 12% 20%,rgba(33,151,255,.16),transparent 18%),
    radial-gradient(circle at 50% 13%,rgba(12,84,200,.12),transparent 24%),
    radial-gradient(circle at 84% 22%,rgba(38,181,255,.15),transparent 19%),
    radial-gradient(circle at 58% 70%,rgba(18,97,230,.10),transparent 24%),
    linear-gradient(180deg,#010711 0%,#021126 42%,#061735 100%) !important;
}
/* denser luminous network points in top half */
body.home .qv30-hero > .qv30-hero-motion:before{
  width:620px!important;height:620px!important;right:2%!important;top:5%!important;
  background:radial-gradient(circle,rgba(70,190,255,.17) 0%,rgba(70,190,255,.04) 38%,transparent 70%)!important;
  filter:blur(2px)!important;
}
body.home .qv30-hero > .qv30-hero-motion:after{
  background-image:
    radial-gradient(circle at 5% 16%, rgba(74,189,255,.60) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 13% 32%, rgba(255,255,255,.26) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 23% 10%, rgba(75,185,255,.45) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 36% 21%, rgba(255,255,255,.22) 0 1px, transparent 2px),
    radial-gradient(circle at 49% 13%, rgba(62,178,255,.38) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 63% 28%, rgba(255,255,255,.20) 0 1px, transparent 2px),
    radial-gradient(circle at 77% 12%, rgba(70,188,255,.55) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 91% 25%, rgba(255,255,255,.26) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 82% 48%, rgba(64,178,255,.42) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 18% 57%, rgba(61,175,255,.30) 0 1px, transparent 2px)!important;
  opacity:.9!important;
}
/* Bright scan/data ribbons behind hero content */
body.home .qv30-hero > .qv-code-motion--hero{
  opacity:1!important;
}
body.home .qv30-hero > .qv-code-motion--hero:before{
  width:88%!important;
  height:34%!important;
  left:7%!important;
  top:8%!important;
  background:
    repeating-linear-gradient(171deg,transparent 0 34px,rgba(66,178,255,.10) 35px,transparent 36px),
    repeating-linear-gradient(8deg,transparent 0 56px,rgba(37,122,255,.08) 57px,transparent 58px),
    radial-gradient(ellipse at center,rgba(24,130,255,.10),transparent 68%)!important;
  transform:rotate(-1deg)!important;
  mask-image:linear-gradient(90deg,transparent 0%,black 12%,black 88%,transparent 100%)!important;
}
body.home .qv30-hero > .qv-code-motion--hero:after{
  width:540px!important;height:540px!important;right:-2%!important;top:6%!important;
  background:radial-gradient(circle,rgba(48,181,255,.15) 0%,rgba(48,181,255,.03) 44%,transparent 68%)!important;
  opacity:.95!important;
}
/* Luminous atmospheric code */
body.home .qv30-hero .qv-tech-code{
  z-index:2!important;
  padding:5px 8px;
  border-radius:8px;
  max-width:360px;
  font-size:11px;
  line-height:1.65;
  letter-spacing:.025em;
  color:rgba(112,214,255,.52);
  text-shadow:0 0 7px rgba(55,179,255,.44),0 0 22px rgba(25,117,255,.28);
  background:linear-gradient(90deg,rgba(3,21,47,.12),rgba(3,21,47,.02));
  opacity:.92;
  filter:drop-shadow(0 0 10px rgba(33,155,255,.10));
  animation:qvSpectacleCodeFloat 12s ease-in-out infinite alternate;
}
body.home .qv30-hero .qv-tech-code--1{top:18%;left:2.6%;transform:rotate(-1deg)}
body.home .qv30-hero .qv-tech-code--2{display:block!important;top:13%;right:2.5%;max-width:320px;animation-delay:-2s}
body.home .qv30-hero .qv-tech-code--3{top:31%;right:6%;max-width:220px;animation-delay:-4s}
body.home .qv30-hero .qv-tech-code--4{bottom:25%;left:3.5%;max-width:350px;animation-delay:-6s}
body.home .qv30-hero .qv-tech-code--5{bottom:18%;right:5%;max-width:290px;animation-delay:-8s}
body.home .qv30-hero .qv-tech-code--6{top:8%;left:45%;max-width:370px;color:rgba(111,208,255,.38);animation-delay:-3s}
body.home .qv30-hero .qv-tech-code--7{top:40%;left:1.5%;max-width:330px;color:rgba(91,190,255,.34);animation-delay:-7s}
body.home .qv30-hero .qv-tech-code--8{top:43%;right:1.5%;max-width:300px;color:rgba(126,222,255,.42);animation-delay:-9s}
body.home .qv30-hero .qv-tech-code--9{bottom:8%;left:28%;max-width:400px;color:rgba(94,193,255,.32);animation-delay:-5s}
body.home .qv30-hero .qv-tech-code--10{top:54%;left:55%;max-width:330px;color:rgba(105,206,255,.34);animation-delay:-10s}
/* subtle terminal/glass feel around selected lines */
body.home .qv30-hero .qv-tech-code--2,
body.home .qv30-hero .qv-tech-code--8{
  border:1px solid rgba(91,199,255,.10);
  background:linear-gradient(180deg,rgba(5,28,62,.22),rgba(3,18,42,.12));
  box-shadow:0 10px 32px rgba(0,7,24,.12),inset 0 0 24px rgba(50,160,255,.025);
}
/* headline glow and premium separation */
body.home .qv30-hero-copy h1{
  text-shadow:0 2px 0 rgba(255,255,255,.02),0 8px 30px rgba(0,0,0,.25),0 0 42px rgba(50,155,255,.08)!important;
}
body.home .qv30-kicker:before{
  content:"";
  display:inline-block;
  width:7px;height:7px;border-radius:50%;
  margin-right:9px;
  background:#4cc9ff;
  box-shadow:0 0 0 5px rgba(76,201,255,.08),0 0 18px rgba(76,201,255,.65);
  vertical-align:1px;
}
/* stronger glass service panels while retaining restraint */
body.home .qv30-hero-proof,
body.home .qv30-service-card{
  backdrop-filter:blur(12px) saturate(1.08);
}
body.home .qv30-service-card--blue{
  box-shadow:0 26px 64px rgba(0,72,130,.24),inset 0 1px 0 rgba(255,255,255,.05);
}
body.home .qv30-service-card--light{
  box-shadow:0 26px 64px rgba(29,62,120,.22),inset 0 1px 0 rgba(255,255,255,.05);
}
@keyframes qvSpectacleCodeFloat{
  0%{transform:translate3d(0,0,0);opacity:.60}
  50%{opacity:.98}
  100%{transform:translate3d(10px,-8px,0);opacity:.74}
}
/* Keep mobile spectacular but clean */
@media(max-width:1100px){
  body.home .qv30-hero{min-height:auto}
  body.home .qv30-hero .qv-tech-code--6,
  body.home .qv30-hero .qv-tech-code--7,
  body.home .qv30-hero .qv-tech-code--9,
  body.home .qv30-hero .qv-tech-code--10{display:none!important}
  body.home .qv30-hero .qv-tech-code--1{top:15%;left:2%}
  body.home .qv30-hero .qv-tech-code--2{top:14%;right:2%;font-size:10px}
  body.home .qv30-hero .qv-tech-code--3{top:44%;right:2%}
  body.home .qv30-hero .qv-tech-code--4{bottom:20%;left:2%}
  body.home .qv30-hero .qv-tech-code--5{bottom:12%;right:2%}
}
@media(max-width:820px){
  body.home .qv30-hero:after{opacity:.56}
  body.home .qv30-hero .qv-tech-code--2,
  body.home .qv30-hero .qv-tech-code--4,
  body.home .qv30-hero .qv-tech-code--5,
  body.home .qv30-hero .qv-tech-code--8{display:none!important}
  body.home .qv30-hero .qv-tech-code--1{display:block!important;top:13%;left:3%;font-size:9px;opacity:.42}
  body.home .qv30-hero .qv-tech-code--3{display:block!important;top:42%;right:2%;font-size:9px;opacity:.34}
}
@media(max-width:640px){
  body.home .qv30-hero:after{display:none}
  body.home .qv30-hero .qv-tech-code{display:none!important}
  body.home .qv30-hero > .qv-code-motion--hero:before{opacity:.36!important}
  body.home .qv30-hero > .qv30-hero-motion:after{opacity:.48!important}
}
@media(prefers-reduced-motion:reduce){
  body.home .qv30-hero .qv-tech-code{animation:none!important}
}


/* ============================================================
   Qavirio v3.3.6 — QAVIRIO CONSTELLATION + MOBILE COMMERCE FIX
   Replaces generic scan stripes with brand Q-orbits / nodes.
   ============================================================ */

/* Remove generic long scan stripes and line elements. */
body.home .qv30-hero:after{
  content:"Q" !important;
  inset:auto 5.5% auto auto !important;
  top:116px !important;
  width:420px !important;
  height:420px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--qv-display),system-ui,sans-serif !important;
  font-size:390px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.10em !important;
  color:rgba(72,182,255,.035) !important;
  -webkit-text-stroke:1px rgba(90,203,255,.065) !important;
  text-shadow:0 0 80px rgba(46,157,255,.08) !important;
  background:none !important;
  opacity:1 !important;
  transform:rotate(-8deg) !important;
  mix-blend-mode:screen !important;
  pointer-events:none !important;
  animation:qvBrandQFloat 14s ease-in-out infinite alternate !important;
}
body.home .qv30-line{display:none !important}

/* Replace stripe ribbons with a constellation of luminous Qavirio nodes. */
body.home .qv30-hero > .qv-code-motion--hero:before{
  width:100% !important;
  height:58% !important;
  left:0 !important;
  top:4% !important;
  transform:none !important;
  opacity:.95 !important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%) !important;
  background:
    radial-gradient(circle at 7% 19%,rgba(78,198,255,.76) 0 1.5px,rgba(78,198,255,.18) 2px,transparent 4px),
    radial-gradient(circle at 13% 37%,rgba(78,198,255,.48) 0 1.3px,transparent 3px),
    radial-gradient(circle at 22% 13%,rgba(119,220,255,.54) 0 1.4px,transparent 3px),
    radial-gradient(circle at 31% 31%,rgba(62,174,255,.44) 0 1.4px,transparent 3px),
    radial-gradient(circle at 43% 12%,rgba(98,210,255,.50) 0 1.4px,transparent 3px),
    radial-gradient(circle at 55% 28%,rgba(61,173,255,.38) 0 1.3px,transparent 3px),
    radial-gradient(circle at 67% 10%,rgba(117,219,255,.58) 0 1.5px,transparent 3px),
    radial-gradient(circle at 76% 35%,rgba(71,189,255,.54) 0 1.4px,transparent 3px),
    radial-gradient(circle at 88% 16%,rgba(110,220,255,.66) 0 1.5px,transparent 3px),
    radial-gradient(circle at 94% 39%,rgba(67,181,255,.42) 0 1.4px,transparent 3px),
    radial-gradient(circle at 18% 54%,rgba(72,194,255,.32) 0 1.2px,transparent 3px),
    radial-gradient(circle at 48% 49%,rgba(72,194,255,.32) 0 1.2px,transparent 3px),
    radial-gradient(circle at 82% 56%,rgba(72,194,255,.34) 0 1.2px,transparent 3px),
    radial-gradient(ellipse at 71% 24%,rgba(40,149,255,.10),transparent 34%),
    radial-gradient(ellipse at 24% 28%,rgba(38,140,255,.08),transparent 30%) !important;
  animation:qvConstellationPulse 8s ease-in-out infinite alternate !important;
}

/* Qavirio orbit ring instead of another stripe field. */
body.home .qv30-hero > .qv-code-motion--hero:after{
  width:270px !important;
  height:270px !important;
  right:13% !important;
  top:12% !important;
  border-radius:50% !important;
  border:1px solid rgba(83,193,255,.14) !important;
  background:
    radial-gradient(circle at center,transparent 57%,rgba(67,178,255,.06) 58%,transparent 60%),
    radial-gradient(circle at 74% 22%,rgba(103,216,255,.72) 0 2px,rgba(103,216,255,.12) 3px,transparent 5px),
    radial-gradient(circle at 18% 68%,rgba(75,190,255,.54) 0 1.7px,transparent 4px),
    radial-gradient(circle,rgba(38,144,255,.08),transparent 68%) !important;
  box-shadow:0 0 70px rgba(37,144,255,.08),inset 0 0 50px rgba(38,144,255,.035) !important;
  filter:none !important;
  opacity:.92 !important;
  animation:qvBrandOrbit 18s linear infinite !important;
}

/* Reuse the existing orb spans as subtle Qavirio monogram beacons. */
body.home .qv30-orb{
  display:grid !important;
  place-items:center !important;
  width:72px !important;
  height:72px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(46,160,255,.12),rgba(22,87,180,.035) 52%,transparent 72%) !important;
  border:1px solid rgba(101,205,255,.09) !important;
  opacity:.58 !important;
  filter:none !important;
  box-shadow:0 0 44px rgba(41,151,255,.07) !important;
}
body.home .qv30-orb:before{
  content:"Q";
  font-family:var(--qv-display),system-ui,sans-serif;
  font-weight:800;
  font-size:28px;
  line-height:1;
  color:rgba(113,215,255,.18);
  text-shadow:0 0 18px rgba(69,184,255,.14);
}
body.home .qv30-orb--1{left:7% !important;top:15% !important;animation:qvQBeaconA 12s ease-in-out infinite alternate !important}
body.home .qv30-orb--2{right:4% !important;top:48% !important;width:58px !important;height:58px !important;animation:qvQBeaconB 15s ease-in-out infinite alternate !important}
body.home .qv30-orb--3{left:53% !important;top:8% !important;width:46px !important;height:46px !important;opacity:.40 !important;animation:qvQBeaconC 17s ease-in-out infinite alternate !important}
body.home .qv30-orb--3:before{font-size:19px}

/* Code stays luminous and is now the primary technical texture. */
body.home .qv30-hero .qv-tech-code{
  background:linear-gradient(90deg,rgba(3,21,47,.15),rgba(3,21,47,0)) !important;
  border-left:1px solid rgba(84,199,255,.08);
  padding-left:10px !important;
}

@keyframes qvBrandQFloat{
  from{transform:rotate(-8deg) translate3d(0,0,0);opacity:.72}
  to{transform:rotate(-4deg) translate3d(-10px,10px,0);opacity:1}
}
@keyframes qvConstellationPulse{
  from{opacity:.60;filter:brightness(.92)}
  to{opacity:1;filter:brightness(1.18)}
}
@keyframes qvBrandOrbit{to{transform:rotate(360deg)}}
@keyframes qvQBeaconA{from{transform:translate3d(0,0,0)}to{transform:translate3d(11px,-9px,0)}}
@keyframes qvQBeaconB{from{transform:translate3d(0,0,0)}to{transform:translate3d(-9px,8px,0)}}
@keyframes qvQBeaconC{from{transform:translate3d(0,0,0)}to{transform:translate3d(6px,10px,0)}}

/* ------------------------------------------------------------
   Mobile: plugin/commerce pages must begin clearly BELOW header.
   ------------------------------------------------------------ */
@media(max-width:980px){
  body.woocommerce-page:not(.home) .qv-main,
  body.woocommerce-cart:not(.home) .qv-main,
  body.woocommerce-checkout:not(.home) .qv-main,
  body.woocommerce-account:not(.home) .qv-main{
    padding-top:108px !important;
  }
  body.admin-bar.woocommerce-page:not(.home) .qv-main,
  body.admin-bar.woocommerce-cart:not(.home) .qv-main,
  body.admin-bar.woocommerce-checkout:not(.home) .qv-main,
  body.admin-bar.woocommerce-account:not(.home) .qv-main{
    padding-top:140px !important;
  }
  .qv-woo-hero,.qv-commerce-hero{padding-top:18px !important}
}
@media(max-width:640px){
  body.woocommerce-page:not(.home) .qv-main,
  body.woocommerce-cart:not(.home) .qv-main,
  body.woocommerce-checkout:not(.home) .qv-main,
  body.woocommerce-account:not(.home) .qv-main{
    padding-top:102px !important;
  }
  body.admin-bar.woocommerce-page:not(.home) .qv-main,
  body.admin-bar.woocommerce-cart:not(.home) .qv-main,
  body.admin-bar.woocommerce-checkout:not(.home) .qv-main,
  body.admin-bar.woocommerce-account:not(.home) .qv-main{
    padding-top:148px !important;
  }
  body.home .qv30-hero:after{display:none !important}
  body.home .qv30-hero > .qv-code-motion--hero:after{width:150px !important;height:150px !important;right:-22px !important;top:16% !important;opacity:.38 !important}
  body.home .qv30-orb--1{display:grid !important;left:auto !important;right:7% !important;top:10% !important;width:44px !important;height:44px !important;opacity:.30 !important}
  body.home .qv30-orb--1:before{font-size:18px}
  body.home .qv30-orb--2,body.home .qv30-orb--3{display:none !important}
}
@media(prefers-reduced-motion:reduce){
  body.home .qv30-hero:after,
  body.home .qv30-hero > .qv-code-motion--hero:before,
  body.home .qv30-hero > .qv-code-motion--hero:after,
  body.home .qv30-orb{animation:none !important}
}


/* ============================================================
   Qavirio v3.3.8 — SAFE RESTORE + NAV CTA CENTER
   Based on v3.3.6. No broad sitewide layout overrides.
   ============================================================ */
.qv-nav-contact,
body.home .qv-nav-contact,
.qv-main-nav .qv-nav-contact{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  gap:0 !important;
}
.qv-site-header .qv-nav-contact,
body.home .qv-site-header .qv-nav-contact{
  min-height:52px !important;
  padding:0 24px !important;
}
@media(max-width:980px){
  .qv-main-nav .qv-nav-contact{
    width:100% !important;
    min-height:50px !important;
    padding:14px 18px !important;
  }
}


/* ============================================================
   Qavirio v3.3.9 — inner page heroes aligned with homepage hero
   ============================================================ */
.qv-page-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 34%,rgba(25,121,255,.18),transparent 25%),
    radial-gradient(circle at 22% 18%,rgba(17,86,190,.14),transparent 24%),
    linear-gradient(180deg,#031126 0%,#061b39 52%,#04142d 100%) !important;
  padding:92px 0 56px !important;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.qv-page-hero:before,
.qv-page-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
/* mesh / wave field like homepage */
.qv-page-hero:before{
  left:-8%;
  right:-8%;
  top:auto;
  bottom:-16%;
  height:60%;
  background-image:
    radial-gradient(82% 112% at 15% 100%, transparent 61%, rgba(74,171,255,.26) 61.8%, transparent 62.6%),
    radial-gradient(86% 118% at 34% 104%, transparent 60%, rgba(61,157,255,.22) 60.8%, transparent 61.6%),
    radial-gradient(90% 118% at 54% 106%, transparent 59%, rgba(50,148,255,.22) 59.8%, transparent 60.6%),
    radial-gradient(86% 116% at 75% 100%, transparent 58%, rgba(64,173,255,.20) 58.8%, transparent 59.6%),
    radial-gradient(76% 110% at 92% 96%, transparent 58%, rgba(66,174,255,.18) 58.8%, transparent 59.6%),
    repeating-linear-gradient(90deg,rgba(47,167,255,.16) 0 1px,transparent 1px 24px),
    repeating-linear-gradient(0deg,rgba(47,167,255,.10) 0 1px,transparent 1px 22px);
  transform-origin:50% 100%;
  transform:perspective(920px) rotateX(73deg) rotateZ(-4deg) scale(1.1);
  opacity:.68;
  mask-image:linear-gradient(to top,rgba(0,0,0,.94) 14%,rgba(0,0,0,.72) 48%,transparent 88%);
  filter:drop-shadow(0 0 18px rgba(34,147,255,.16));
}
/* soft glow / overlay */
.qv-page-hero:after{
  background:
    linear-gradient(90deg,rgba(2,10,23,.34) 0%,rgba(2,10,23,.10) 46%,rgba(2,10,23,.10) 100%),
    radial-gradient(circle at 34% 24%,rgba(34,145,255,.10),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,0) 36%);
}
.qv-page-hero .qv-container{
  position:relative;
  z-index:2;
  min-height:280px;
  padding:42px !important;
  border-radius:32px !important;
  background:linear-gradient(145deg,rgba(7,22,50,.84),rgba(3,12,28,.74)) !important;
  border:1px solid rgba(116,193,255,.10) !important;
  box-shadow:0 28px 64px rgba(0,0,0,.24) !important;
}
.qv-page-hero .qv-kicker{color:#72dfff !important;letter-spacing:.18em}
.qv-page-hero h1{
  max-width:14ch;
  color:#fff;
  font-size:clamp(42px,5vw,62px) !important;
  line-height:.98;
  margin:12px 0 16px;
  text-shadow:0 6px 28px rgba(7,23,48,.22);
}
.qv-page-hero p{
  max-width:780px;
  color:#d7e5f5 !important;
  font-size:18px;
  line-height:1.8;
}
/* bring page code motion closer to homepage look */
.qv-page-hero .qv-code-motion--page{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  overflow:hidden !important;
  opacity:1 !important;
}
.qv-page-hero .qv-code-motion--page .qv-code-line{
  display:block !important;
  opacity:.16 !important;
}
.qv-page-hero .qv-code-motion--page .qv-code-shape{
  display:block !important;
  border-radius:50% !important;
  background:radial-gradient(circle, rgba(138,213,255,.12), rgba(138,213,255,.04) 60%, rgba(138,213,255,0) 72%) !important;
  border:1px solid rgba(167,223,255,.10) !important;
}
.qv-page-hero .qv-code-motion--page .qv-code-chip{
  background:linear-gradient(180deg, rgba(10,26,56,.72), rgba(6,18,40,.48)) !important;
  color:#eef7ff !important;
  border:1px solid rgba(129,203,255,.10) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.16);
  max-width:136px;
}
.qv-page-hero .qv-code-motion--page .qv-code-chip--1{top:22px;left:7%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--2{top:24px;right:8%;left:auto}
.qv-page-hero .qv-code-motion--page .qv-code-chip--3{top:44%;left:48%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--4{bottom:22px;right:12%;left:auto}
.qv-page-hero .qv-code-motion--page .qv-code-chip--5{bottom:18px;left:12%}
.qv-page-hero .qv-code-motion--page .qv-code-chip--6{top:58%;left:16%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--1{width:132px;height:132px;top:20px;left:9%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--2{width:104px;height:104px;top:24px;right:8%}
.qv-page-hero .qv-code-motion--page .qv-code-shape--3{width:82px;height:82px;top:54%;left:54%}
.qv-page-hero .qv-code-motion--page .qv-code-line--1{top:30%;width:76%;left:12%}
.qv-page-hero .qv-code-motion--page .qv-code-line--2{top:62%;width:66%;left:18%}

@media (max-width:980px){
  .qv-page-hero{padding:78px 0 48px !important}
  .qv-page-hero .qv-container{padding:34px !important}
  .qv-page-hero h1{font-size:50px !important;max-width:100%}
}
@media (max-width:640px){
  .qv-page-hero{padding:70px 0 38px !important}
  .qv-page-hero:before{height:50%;bottom:-8%;opacity:.52}
  .qv-page-hero .qv-container{padding:28px 20px !important;border-radius:24px !important}
  .qv-page-hero h1{font-size:38px !important}
  .qv-page-hero p{font-size:16px !important;line-height:1.7 !important}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--2,
  .qv-page-hero .qv-code-motion--page .qv-code-chip--4,
  .qv-page-hero .qv-code-motion--page .qv-code-chip--6{display:none !important}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--1{top:84px !important;left:4% !important}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--3{top:58% !important;left:8% !important}
  .qv-page-hero .qv-code-motion--page .qv-code-chip--5{bottom:12% !important;left:14% !important}
}


/* ============================================================
   Qavirio v3.4.1 — definitive inner hero selector fix
   Exact selector override for the legacy landscape rule.
   ============================================================ */
body:not(.home) .qv-page-hero{
  position:relative !important;
  overflow:hidden !important;
  padding:126px 0 46px !important;
  background:
    radial-gradient(circle at 82% 24%,rgba(38,148,255,.15),transparent 22%),
    radial-gradient(circle at 18% 20%,rgba(15,93,210,.13),transparent 24%),
    linear-gradient(180deg,#020914 0%,#03152e 48%,#061d3d 100%) !important;
}
/* exact replacement for the old landscape pseudo-element */
body:not(.home) .qv-page-hero:after{
  content:"Q" !important;
  position:absolute !important;
  inset:auto 5.5% auto auto !important;
  top:102px !important;
  width:330px !important;
  height:330px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--qv-display),system-ui,sans-serif !important;
  font-size:300px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.10em !important;
  color:rgba(72,182,255,.035) !important;
  -webkit-text-stroke:1px rgba(90,203,255,.07) !important;
  text-shadow:0 0 70px rgba(46,157,255,.10) !important;
  background:none !important;
  background-image:none !important;
  opacity:1 !important;
  transform:rotate(-8deg) !important;
  mix-blend-mode:screen !important;
  pointer-events:none !important;
  animation:qvInnerQFloat 14s ease-in-out infinite alternate !important;
}
/* constellation + wave field */
body:not(.home) .qv-page-hero:before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 7% 20%,rgba(78,198,255,.60) 0 1.4px,rgba(78,198,255,.12) 2px,transparent 4px),
    radial-gradient(circle at 16% 38%,rgba(78,198,255,.36) 0 1.2px,transparent 3px),
    radial-gradient(circle at 27% 14%,rgba(119,220,255,.42) 0 1.3px,transparent 3px),
    radial-gradient(circle at 44% 10%,rgba(98,210,255,.40) 0 1.3px,transparent 3px),
    radial-gradient(circle at 61% 30%,rgba(61,173,255,.32) 0 1.2px,transparent 3px),
    radial-gradient(circle at 76% 18%,rgba(117,219,255,.46) 0 1.4px,transparent 3px),
    radial-gradient(circle at 91% 36%,rgba(71,189,255,.42) 0 1.3px,transparent 3px),
    radial-gradient(ellipse at 72% 28%,rgba(40,149,255,.10),transparent 30%),
    radial-gradient(ellipse at 22% 32%,rgba(38,140,255,.08),transparent 28%),
    radial-gradient(90% 100% at 52% 118%,transparent 58%,rgba(65,174,255,.25) 58.7%,transparent 59.5%),
    radial-gradient(82% 100% at 22% 116%,transparent 60%,rgba(67,181,255,.18) 60.7%,transparent 61.5%) !important;
  opacity:.92 !important;
  filter:none !important;
  animation:qvInnerConstellation 9s ease-in-out infinite alternate !important;
}
body:not(.home) .qv-page-hero .qv-container{
  position:relative !important;
  z-index:3 !important;
  min-height:260px !important;
  padding:46px !important;
  border-radius:30px !important;
  border:1px solid rgba(126,198,255,.13) !important;
  background:linear-gradient(145deg,rgba(7,23,52,.80),rgba(3,13,30,.69)) !important;
  box-shadow:0 30px 74px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025) !important;
  backdrop-filter:blur(3px) !important;
}
body:not(.home) .qv-page-hero .qv-kicker{color:#6edfff !important}
body:not(.home) .qv-page-hero h1{color:#fff !important;text-shadow:0 6px 28px rgba(7,23,48,.25)}
body:not(.home) .qv-page-hero p{color:#d8e8f7 !important}
/* exact reversal of the old display:none !important selector */
body:not(.home) .qv-page-hero .qv-code-motion--page{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  overflow:hidden !important;
  opacity:1 !important;
  pointer-events:none !important;
}
/* Remove generic long line/chip clutter. Keep branded orbits + code. */
body:not(.home) .qv-page-hero .qv-code-motion--page .qv-code-line{display:none !important}
body:not(.home) .qv-page-hero .qv-code-motion--page .qv-code-chip{display:none !important}
body:not(.home) .qv-page-hero .qv-code-motion--page .qv-code-shape{
  display:block !important;
  position:absolute !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(52,168,255,.08),rgba(52,168,255,.025) 56%,transparent 72%) !important;
  border:1px solid rgba(101,205,255,.08) !important;
  box-shadow:0 0 45px rgba(41,151,255,.05) !important;
}
body:not(.home) .qv-page-hero .qv-code-shape--1{width:170px !important;height:170px !important;left:7% !important;top:16% !important}
body:not(.home) .qv-page-hero .qv-code-shape--2{width:118px !important;height:118px !important;right:10% !important;top:20% !important}
body:not(.home) .qv-page-hero .qv-code-shape--3{width:82px !important;height:82px !important;left:60% !important;top:58% !important}
body:not(.home) .qv-page-hero .qv-page-tech-code{
  position:absolute;
  display:block;
  max-width:330px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  font-size:10px;
  line-height:1.65;
  letter-spacing:.015em;
  color:rgba(108,198,255,.30);
  text-shadow:0 0 16px rgba(25,117,255,.12);
  white-space:nowrap;
  opacity:.72;
  animation:qvInnerCodeFloat 13s ease-in-out infinite alternate;
}
body:not(.home) .qv-page-hero .qv-page-tech-code--1{top:18%;left:2.5%}
body:not(.home) .qv-page-hero .qv-page-tech-code--2{top:22%;right:3%}
body:not(.home) .qv-page-hero .qv-page-tech-code--3{bottom:12%;right:7%}
@keyframes qvInnerQFloat{from{transform:rotate(-8deg) translate3d(0,0,0)}to{transform:rotate(-4deg) translate3d(-8px,8px,0)}}
@keyframes qvInnerConstellation{from{opacity:.68;filter:brightness(.94)}to{opacity:1;filter:brightness(1.12)}}
@keyframes qvInnerCodeFloat{from{translate:0 0;opacity:.42}to{translate:6px -6px;opacity:.78}}
@media(max-width:980px){
  body:not(.home) .qv-page-hero{padding:112px 0 38px !important}
  body:not(.home) .qv-page-hero:after{width:250px !important;height:250px !important;font-size:225px !important;top:98px !important;right:2% !important}
}
@media(max-width:640px){
  body:not(.home) .qv-page-hero{padding:96px 0 30px !important}
  body:not(.home) .qv-page-hero:after{width:160px !important;height:160px !important;font-size:145px !important;top:90px !important;right:-2% !important;opacity:.60 !important}
  body:not(.home) .qv-page-hero .qv-container{padding:28px 20px !important;border-radius:24px !important}
  body:not(.home) .qv-page-hero .qv-page-tech-code--2,
  body:not(.home) .qv-page-hero .qv-page-tech-code--3{display:none !important}
  body:not(.home) .qv-page-hero .qv-page-tech-code--1{top:10%;left:3%;font-size:8px;opacity:.34}
  body:not(.home) .qv-page-hero .qv-code-shape--2,
  body:not(.home) .qv-page-hero .qv-code-shape--3{display:none !important}
}
@media(prefers-reduced-motion:reduce){
  body:not(.home) .qv-page-hero:before,
  body:not(.home) .qv-page-hero:after,
  body:not(.home) .qv-page-hero .qv-page-tech-code{animation:none !important}
}


/* ============================================================
   Qavirio v3.4.2 — NAV HOVER + CONTACT CTA FIX
   ============================================================ */

/* Keep the blue hover line only below normal menu labels. */
.qv-main-nav > a:not(.qv-nav-contact):after{
  left:0 !important;
  right:0 !important;
  bottom:-8px !important;
  height:2px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#62d7ff,#1d7cff) !important;
  opacity:0 !important;
  transform:scaleX(.30) !important;
  transform-origin:center center !important;
  transition:opacity .2s ease,transform .2s ease !important;
}
.qv-main-nav > a:not(.qv-nav-contact):hover:after{
  opacity:1 !important;
  transform:scaleX(1) !important;
}

/* Never draw the menu underline inside the yellow contact CTA. */
.qv-main-nav > .qv-nav-contact:after,
.qv-main-nav > .qv-nav-contact:hover:after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
}

/* Contact CTA is always yellow with black text on every page. */
.qv-nav-contact,
body.home .qv-nav-contact,
body:not(.home) .qv-nav-contact,
.qv-site-header .qv-nav-contact,
.qv-main-nav .qv-nav-contact{
  background:linear-gradient(135deg,#f6c331,#ffd761) !important;
  color:#07142a !important;
  border:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.1 !important;
  box-shadow:0 12px 26px rgba(0,0,0,.22) !important;
  transform:none !important;
}
.qv-nav-contact:hover,
body.home .qv-nav-contact:hover,
body:not(.home) .qv-nav-contact:hover,
.qv-site-header .qv-nav-contact:hover,
.qv-main-nav .qv-nav-contact:hover{
  background:linear-gradient(135deg,#f6c331,#ffd761) !important;
  color:#07142a !important;
  box-shadow:0 12px 26px rgba(0,0,0,.22) !important;
  transform:none !important;
}

@media(max-width:980px){
  .qv-main-nav > a:not(.qv-nav-contact):after{display:none !important;}
  .qv-main-nav .qv-nav-contact,
  .qv-main-nav .qv-nav-contact:hover{
    color:#07142a !important;
    background:linear-gradient(135deg,#f6c331,#ffd761) !important;
  }
}


/* ============================================================
   Qavirio v3.4.3 — Q HERO ORBIT REFINEMENT
   Put the orbit INSIDE the Q with 3 glowing points.
   Keep everything else unchanged.
   ============================================================ */
body.home .qv30-hero:after{
  right:5.8% !important;
  top:112px !important;
  width:430px !important;
  height:430px !important;
}

/* The former loose orbit is now a compact orbit inside the bowl of the Q. */
body.home .qv30-hero > .qv-code-motion--hero:after{
  width:224px !important;
  height:224px !important;
  right:14.4% !important;
  top:156px !important;
  border:none !important;
  border-radius:50% !important;
  background:
    radial-gradient(circle at center, transparent 24%, rgba(86,202,255,.18) 24.7%, transparent 25.6%),
    radial-gradient(circle at center, transparent 44%, rgba(96,212,255,.15) 44.7%, transparent 45.6%),
    radial-gradient(circle at center, transparent 64%, rgba(108,219,255,.12) 64.7%, transparent 65.6%),
    radial-gradient(circle at 50% 8%, rgba(153,235,255,.98) 0 5px, rgba(153,235,255,.34) 6px, transparent 12px),
    radial-gradient(circle at 84% 64%, rgba(121,223,255,.94) 0 5px, rgba(121,223,255,.28) 6px, transparent 12px),
    radial-gradient(circle at 18% 74%, rgba(92,205,255,.92) 0 5px, rgba(92,205,255,.28) 6px, transparent 12px),
    radial-gradient(circle at center, rgba(52,168,255,.08), transparent 70%) !important;
  box-shadow:
    0 0 32px rgba(42,154,255,.12),
    inset 0 0 34px rgba(45,151,255,.05) !important;
  opacity:.96 !important;
  animation:qvInnerOrbitSpin 18s linear infinite !important;
}

@keyframes qvInnerOrbitSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

@media(max-width:1100px){
  body.home .qv30-hero:after{
    right:4.5% !important;
    width:360px !important;
    height:360px !important;
    top:118px !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:188px !important;
    height:188px !important;
    right:12.4% !important;
    top:164px !important;
  }
}
@media(max-width:820px){
  body.home .qv30-hero:after{
    right:2% !important;
    width:285px !important;
    height:285px !important;
    top:118px !important;
    font-size:260px !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:146px !important;
    height:146px !important;
    right:10.7% !important;
    top:160px !important;
    opacity:.72 !important;
  }
}
@media(max-width:640px){
  body.home .qv30-hero:after{
    right:-8px !important;
    top:116px !important;
    width:210px !important;
    height:210px !important;
    font-size:196px !important;
    opacity:.88 !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:104px !important;
    height:104px !important;
    right:26px !important;
    top:154px !important;
    opacity:.56 !important;
  }
}


/* ============================================================
   Qavirio v3.4.4 — Q HERO ORBIT ANIMATION FINAL
   Ensure the 3 glowing points rotate clearly inside the Q.
   ============================================================ */
body.home .qv30-hero > .qv-code-motion--hero:after{
  transform-origin:center center !important;
  will-change:transform !important;
  animation:qvInnerOrbitSpin 14s linear infinite !important;
}
@keyframes qvInnerOrbitSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@media (prefers-reduced-motion: reduce){
  body.home .qv30-hero > .qv-code-motion--hero:after{
    animation:none !important;
  }
}


/* ============================================================
   Qavirio v3.4.5 — INTEGRATED Q HERO
   Replace the separate Q + orbit feeling with one integrated Q,
   and 3 rotating glowing dots inside the Q bowl.
   ============================================================ */
/* New integrated Q on the homepage hero */
body.home .qv30-hero:after{
  content:"Q" !important;
  inset:auto 5.4% auto auto !important;
  top:108px !important;
  width:430px !important;
  height:430px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--qv-display),system-ui,sans-serif !important;
  font-size:402px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.10em !important;
  color:rgba(77,190,255,.040) !important;
  -webkit-text-stroke:1px rgba(104,214,255,.09) !important;
  text-shadow:0 0 96px rgba(39,151,255,.14), 0 0 32px rgba(70,202,255,.08) !important;
  background:none !important;
  opacity:1 !important;
  transform:rotate(-8deg) !important;
  mix-blend-mode:screen !important;
  pointer-events:none !important;
  animation:qvIntegratedQFloat 14s ease-in-out infinite alternate !important;
}

/* Remove the old visible orbit-circle treatment and use only rotating light points. */
body.home .qv30-hero > .qv-code-motion--hero:after{
  width:188px !important;
  height:188px !important;
  right:14.8% !important;
  top:150px !important;
  border:none !important;
  border-radius:50% !important;
  box-shadow:none !important;
  background:
    radial-gradient(circle at 50% 7%, rgba(164,238,255,.98) 0 5px, rgba(164,238,255,.34) 6px, transparent 13px),
    radial-gradient(circle at 85% 67%, rgba(120,225,255,.95) 0 5px, rgba(120,225,255,.28) 6px, transparent 13px),
    radial-gradient(circle at 18% 74%, rgba(92,205,255,.94) 0 5px, rgba(92,205,255,.28) 6px, transparent 13px),
    radial-gradient(circle at center, rgba(52,168,255,.06), transparent 70%) !important;
  opacity:.94 !important;
  transform-origin:center center !important;
  will-change:transform !important;
  animation:qvIntegratedQDotsSpin 12s linear infinite !important;
  filter:drop-shadow(0 0 10px rgba(109,220,255,.28)) !important;
}

/* So the old separate orbit rings no longer read as a second object. */
body.home .qv30-orb{display:none !important}

@keyframes qvIntegratedQFloat{
  from{transform:rotate(-8deg) translate3d(0,0,0)}
  to{transform:rotate(-5deg) translate3d(-8px,7px,0)}
}
@keyframes qvIntegratedQDotsSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

@media(max-width:1100px){
  body.home .qv30-hero:after{
    width:368px !important;
    height:368px !important;
    font-size:340px !important;
    right:4.2% !important;
    top:112px !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:160px !important;
    height:160px !important;
    right:12.7% !important;
    top:154px !important;
  }
}
@media(max-width:820px){
  body.home .qv30-hero:after{
    width:286px !important;
    height:286px !important;
    font-size:262px !important;
    right:1.2% !important;
    top:120px !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:124px !important;
    height:124px !important;
    right:10.2% !important;
    top:154px !important;
    opacity:.74 !important;
  }
}
@media(max-width:640px){
  body.home .qv30-hero:after{
    width:218px !important;
    height:218px !important;
    font-size:198px !important;
    right:-4px !important;
    top:118px !important;
    opacity:.90 !important;
  }
  body.home .qv30-hero > .qv-code-motion--hero:after{
    width:92px !important;
    height:92px !important;
    right:25px !important;
    top:150px !important;
    opacity:.58 !important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.home .qv30-hero:after,
  body.home .qv30-hero > .qv-code-motion--hero:after{animation:none !important}
}


/* ============================================================
   Qavirio v3.4.6 — CLEAN BRAND Q COMPONENT
   One real Q component; 3 dots run on the Q circumference.
   Old pseudo Q/orbit layers are explicitly disabled.
   ============================================================ */

/* Retire old Q / orbit / beacon constructs without touching the rest of the hero. */
body.home .qv30-hero:after{
  content:none !important;
  display:none !important;
}
body.home .qv30-hero > .qv-code-motion--hero:after{
  content:none !important;
  display:none !important;
}
body.home .qv30-orb,
body.home .qv30-line{display:none !important}

/* Standalone branded Q. */
body.home .qv-hero-brand-q{
  --q-size:430px;
  --q-orbit-radius:142px;
  position:absolute;
  top:108px;
  right:5.2%;
  width:var(--q-size);
  height:var(--q-size);
  z-index:2;
  pointer-events:none;
  opacity:.92;
  filter:drop-shadow(0 0 30px rgba(58,172,255,.08));
  animation:qvCleanQFloat 14s ease-in-out infinite alternate;
}
body.home .qv-hero-brand-q__svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
body.home .qv-hero-brand-q__outer,
body.home .qv-hero-brand-q__mid,
body.home .qv-hero-brand-q__inner{
  fill:none;
  stroke:url(#qvQStroke);
  vector-effect:non-scaling-stroke;
}
body.home .qv-hero-brand-q__outer{
  stroke-width:1.35;
  stroke-opacity:.90;
  filter:drop-shadow(0 0 7px rgba(84,197,255,.20));
}
body.home .qv-hero-brand-q__mid{stroke-width:1;stroke-opacity:.58}
body.home .qv-hero-brand-q__inner{stroke-width:.9;stroke-opacity:.40}
body.home .qv-hero-brand-q__tail{
  fill:rgba(46,137,255,.035);
  stroke:url(#qvQStroke);
  stroke-width:1.15;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 7px rgba(66,179,255,.12));
}

/* Each wrapper rotates around the exact Q centre. The dot sits on the outer circumference. */
body.home .qv-hero-brand-q__orbit{
  position:absolute;
  left:46.67%; /* SVG centre x 200 / 420 */
  top:44.76%;  /* SVG centre y 192 / 420 */
  width:0;
  height:0;
  transform-origin:0 0;
  animation:qvCleanQOrbit 15s linear infinite;
}
body.home .qv-hero-brand-q__orbit--1{animation-delay:0s}
body.home .qv-hero-brand-q__orbit--2{animation-delay:-5s}
body.home .qv-hero-brand-q__orbit--3{animation-delay:-10s}
body.home .qv-hero-brand-q__orbit i{
  position:absolute;
  left:0;
  top:0;
  width:11px;
  height:11px;
  margin:-5.5px 0 0 -5.5px;
  border-radius:50%;
  background:#8feaff;
  box-shadow:
    0 0 0 4px rgba(90,215,255,.08),
    0 0 13px rgba(111,225,255,.92),
    0 0 29px rgba(37,146,255,.48);
  transform:translateY(calc(-1 * var(--q-orbit-radius)));
}
body.home .qv-hero-brand-q__orbit--2 i{
  width:9px;height:9px;margin:-4.5px 0 0 -4.5px;
  background:#67d7ff;
  box-shadow:0 0 0 4px rgba(70,194,255,.07),0 0 12px rgba(89,211,255,.85),0 0 25px rgba(43,142,255,.42);
}
body.home .qv-hero-brand-q__orbit--3 i{
  width:8px;height:8px;margin:-4px 0 0 -4px;
  background:#b3f2ff;
  box-shadow:0 0 0 4px rgba(117,223,255,.06),0 0 11px rgba(150,235,255,.88),0 0 24px rgba(45,157,255,.38);
}

@keyframes qvCleanQOrbit{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes qvCleanQFloat{
  from{transform:translate3d(0,0,0) rotate(-2deg);opacity:.84}
  to{transform:translate3d(-6px,6px,0) rotate(0deg);opacity:.98}
}

@media(max-width:1180px){
  body.home .qv-hero-brand-q{
    --q-size:370px;
    --q-orbit-radius:122px;
    top:118px;
    right:3.6%;
  }
}
@media(max-width:980px){
  body.home .qv-hero-brand-q{
    --q-size:300px;
    --q-orbit-radius:99px;
    top:128px;
    right:1.5%;
    opacity:.70;
  }
}
@media(max-width:820px){
  body.home .qv-hero-brand-q{
    --q-size:245px;
    --q-orbit-radius:81px;
    top:132px;
    right:-18px;
    opacity:.50;
  }
}
@media(max-width:640px){
  body.home .qv-hero-brand-q{
    --q-size:190px;
    --q-orbit-radius:63px;
    top:126px;
    right:-34px;
    opacity:.34;
  }
  body.home .qv-hero-brand-q__orbit i{width:7px;height:7px;margin:-3.5px 0 0 -3.5px}
  body.home .qv-hero-brand-q__orbit--2 i,
  body.home .qv-hero-brand-q__orbit--3 i{width:6px;height:6px;margin:-3px 0 0 -3px}
}
@media(prefers-reduced-motion:reduce){
  body.home .qv-hero-brand-q,
  body.home .qv-hero-brand-q__orbit{animation:none !important}
}


/* ============================================================
   Qavirio v3.4.7 — HERO SIDE BALANCE TWEAK
   Shift the homepage proof block slightly left for better balance.
   ============================================================ */
@media (min-width:1101px){
  body.home .qv30-hero-side{
    position:relative;
    left:-18px;
  }
}


/* ============================================================
   Qavirio v3.4.8 — HOMEPAGE HEADLINE PREMIUM REFINEMENT
   Smaller and calmer typography without changing hero structure.
   ============================================================ */
@media (min-width:1101px){
  body.home .qv30-hero-copy h1{
    max-width:660px !important;
    font-size:clamp(56px,5.7vw,74px) !important;
    line-height:.97 !important;
    letter-spacing:-.058em !important;
    font-weight:780 !important;
    margin:14px 0 22px !important;
  }
  body.home .qv30-hero-copy p{
    max-width:610px !important;
    font-size:17px !important;
    line-height:1.78 !important;
  }
}
@media (min-width:821px) and (max-width:1100px){
  body.home .qv30-hero-copy h1{
    font-size:50px !important;
    line-height:.99 !important;
    letter-spacing:-.052em !important;
  }
}
@media (max-width:820px){
  body.home .qv30-hero-copy h1{
    font-size:44px !important;
    line-height:.99 !important;
    letter-spacing:-.05em !important;
  }
}
@media (max-width:640px){
  body.home .qv30-hero-copy h1{
    font-size:36px !important;
    line-height:1.01 !important;
    letter-spacing:-.045em !important;
  }
}
