
:root{
  --bg:#070b12;
  --panel:#0c1220;
  --panel2:#0b1628;
  --text:#eaf2ff;
  --muted:rgba(234,242,255,.75);
  --cyan:#48d7ff;
  --cyan2:#00c2ff;
  --line:rgba(72,215,255,.18);
  --shadow:0 18px 55px rgba(0,0,0,.55);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:inherit}
.wrap{
  position:relative;
  overflow:hidden;
}
.bgGlow{
  position:absolute;inset:-200px;
  background:
    radial-gradient(800px 500px at 20% 10%, rgba(72,215,255,.25), transparent 60%),
    radial-gradient(900px 600px at 80% 20%, rgba(0,194,255,.18), transparent 60%),
    radial-gradient(1200px 900px at 50% 90%, rgba(72,215,255,.12), transparent 65%);
  filter: blur(6px);
  opacity:.95;
  pointer-events:none;
}
.grid{
  position:absolute;inset:0;
  background-image: linear-gradient(to right, rgba(72,215,255,.06) 1px, transparent 1px),
                    linear-gradient(to bottom, rgba(72,215,255,.06) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(closest-side at 50% 15%, rgba(0,0,0,.85), transparent 75%);
  opacity:.5;
  pointer-events:none;
}
.container{max-width:1050px;margin:0 auto;padding:28px 18px 90px}
.topBar{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(12,18,32,.55);
  backdrop-filter: blur(10px);
}
.brand{font-weight:700;letter-spacing:.4px}
.pill{display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:13px}
.pill b{color:var(--text)}
.hero{display:grid;gap:18px;margin-top:18px;grid-template-columns: 1.15fr .85fr}
@media (max-width:900px){.hero{grid-template-columns:1fr}}
.hTitle{
  font-size:40px;line-height:1.08;margin:10px 0 8px;
  letter-spacing:-.6px;
}
.sub{color:var(--muted);font-size:16px;max-width:62ch}
.bullets{display:grid;gap:10px;margin-top:16px}
.bullet{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(12,18,32,.55)}
.dot{width:10px;height:10px;border-radius:999px;background:var(--cyan);margin-top:6px;box-shadow:0 0 18px rgba(72,215,255,.55)}
.ctaRow{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;align-items:stretch}
.ctaRow .btn{flex:1;min-width:220px}
.btn{
  display:inline-flex;gap:10px;align-items:center;justify-content:center;
  padding:14px 18px;border-radius:14px;text-decoration:none;font-weight:800;
  background:linear-gradient(180deg, rgba(72,215,255,1), rgba(0,194,255,1));
  color:#001018;box-shadow:0 18px 45px rgba(0,194,255,.18);
  border:1px solid rgba(255,255,255,.10);
}
.btn.secondary{
  background:rgba(12,18,32,.55);
  color:var(--text);
  border:1px solid var(--line);
  box-shadow:none;
}
.note{color:var(--muted);font-size:13px}
.card{
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(12,18,32,.55);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.cardPad{padding:16px 16px 14px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
@media (max-width:900px){.kpis{grid-template-columns:1fr}}
.kpi{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(11,22,40,.55)}
.kpi .big{font-size:18px;font-weight:800}
.kpi .small{font-size:12px;color:var(--muted)}
.previewWrap{position:relative}
.preview{
  width:100%;
  display:block;
  border-radius:18px;
  transform: translateZ(0);
}
/* Gated preview: show top portion clearly, fade/blur bottom */
.previewMask{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  border:1px solid var(--line);
  box-shadow:0 22px 60px rgba(0,0,0,.55);
}
.previewMask img{
  width:100%;
  display:block;
}

/* --- V5 layout balance --- */
@media (min-width: 901px){
  /* Keep the right column from becoming a skyscraper */
  .previewMask{max-height:300px;}
  .previewMask img{height:300px;object-fit:cover;object-position:top;}
}

@media (max-width: 900px){
  .previewMask{max-height:260px;}
  .previewMask img{height:260px;object-fit:cover;object-position:top;}
}

.previewMask:after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:38%;
  background:linear-gradient(to bottom, rgba(7,11,18,0), rgba(7,11,18,.92));
  pointer-events:none;
}
.blurZone{
  position:absolute;left:0;right:0;bottom:0;height:38%;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  pointer-events:none;
}
.lock{
  position:absolute;left:14px;bottom:14px;
  display:flex;gap:10px;align-items:center;
  padding:10px 12px;border-radius:14px;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.10);
}
.lock .t1{font-weight:800}
.lock .t2{font-size:12px;color:rgba(234,242,255,.80)}
.section{margin-top:22px}
.section h2{margin:0 0 10px;font-size:22px}
.columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:900px){.columns{grid-template-columns:1fr}}
.list{margin:0;padding-left:18px;color:var(--muted)}
.list li{margin:8px 0}
.roi{
  display:grid;grid-template-columns:1.1fr .9fr;gap:12px;align-items:stretch
}
@media (max-width:900px){.roi{grid-template-columns:1fr}}
.calc{
  border:1px solid var(--line);border-radius:18px;background:rgba(11,22,40,.55);
  padding:14px
}
.field{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0}
.field input{
  width:140px;max-width:45%;
  padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.25);color:var(--text);font-weight:700
}
.result{
  margin-top:10px;padding:12px;border-radius:14px;border:1px solid rgba(72,215,255,.25);
  background:rgba(0,194,255,.08)
}
.result b{color:var(--cyan)}
.trustRow{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.badge{padding:8px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(12,18,32,.55);color:var(--muted);font-size:13px}
.badge b{color:var(--text)}
.guarantee{
  display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:center
}
@media (max-width:700px){.guarantee{grid-template-columns:1fr;justify-items:center;text-align:center}.guarantee img{max-width:360px}}
.guarantee img{width:100%;max-width:420px;border-radius:14px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.stickyCta{
  position:fixed;left:0;right:0;bottom:0;
  background:rgba(7,11,18,.78);
  backdrop-filter: blur(10px);
  border-top:1px solid rgba(72,215,255,.18);
  padding:10px 12px;
  display:flex;justify-content:center;z-index:50
}
.stickyCta a{max-width:1050px;width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center}
.stickyCta .btn{width:100%}
.footer{margin-top:26px;color:rgba(234,242,255,.55);font-size:12px;text-align:center}


/* --- V4 conversion polish --- */
.micro{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.45}
.midCta{
  margin-top:14px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(12,18,32,.45);
}
@media (max-width:650px){.midCta{grid-template-columns:1fr;justify-items:start}}
.btn.mini{padding:10px 14px;font-size:14px}
@media (max-width: 820px){
  .midCta{justify-content:flex-start}
}


/* Video embed (Hard Close) */
.videoCard{margin-bottom:18px;padding:14px;border:1px solid rgba(90,210,255,.22);border-radius:18px;background:rgba(8,14,24,.55);box-shadow:0 0 0 1px rgba(0,0,0,.25) inset}
.videoRatio{position:relative;width:100%;aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:rgba(0,0,0,.25)}
.videoRatio iframe{position:absolute;inset:0;width:100%;height:100%}
.videoCaption{margin-top:10px;font-size:.92rem;line-height:1.35;color:rgba(230,245,255,.86)}
@media(min-width:980px){.videoCard{margin-bottom:22px}}


/* --- Hard Close V2 layout fixes --- */
.guaranteeCard{
  display:flex;
  align-items:center;
  gap:18px;
}
.guaranteeCard img{
  width:360px;
  max-width:44%;
  height:auto;
  border-radius:14px;
  border:1px solid rgba(120,220,255,.18);
  box-shadow:0 16px 46px rgba(0,0,0,.38);
  flex:0 0 auto;
}
@media (max-width: 820px){
  .guaranteeCard{ flex-direction:column; align-items:flex-start; }
  .guaranteeCard img{ width:100%; max-width:520px; }
}


/* === Hard Close layout fix (v5) === */
.hero{
  position: relative;
  z-index: 2;
  margin-bottom: 24px;
  align-items: start;
}
.previewWrap{
  position: relative;
  z-index: 2;
  align-self: start;
}
.section{
  position: relative;
  z-index: 1;
  clear: both;
}
@media (min-width: 901px){
  .hero{ grid-template-columns: 1.05fr 0.95fr; }
}


/* --- Hard Close V6 layout fixes (Step 1 + Step 2) --- */
.hero{align-items:stretch;}
.heroLeft{display:flex;flex-direction:column;min-height:100%;}
.heroLeft .heroExtra{margin-top:auto;}
.videoOnly{padding:0;}
.videoOnly .videoCard{margin:0;}
.fullPreview .fpGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;align-items:stretch;}
.fullPreview .fpPreview .previewMask{height:100%;}
.previewMask.wide img{height:340px;}
@media (max-width: 900px){
  .fullPreview .fpGrid{grid-template-columns:1fr;}
  .previewMask.wide img{height:260px;}
}


/* ---- V6 LOCK: hero alignment + mobile-safe video placement ---- */
.hero { align-items: stretch; }
.heroRight { display: flex; flex-direction: column; }
.heroRight .videoCard, .heroRight .video { margin-top: auto; }
/* If there's an experience card inside heroRight, keep it at top */
.heroRight .experienceCard { margin-top: 0; }
/* Mobile: stack cleanly with predictable order */
@media (max-width: 900px){
  .hero { display: block; }
  .heroLeft, .heroRight { width: 100%; }
  .heroRight { margin-top: 14px; }
  .heroRight .videoCard, .heroRight .video { margin-top: 14px; }
}


/* ---- V6 LOCK: remove haphazard preview blur overlays ---- */
.preview .blur, .preview .fade, .preview .fog, .preview .previewOverlay,
.preview .bottomBlur, .preview .softFade, .preview .gradientFade,
.previewExcerpt .blur, .previewExcerpt .fade, .previewExcerpt .fog,
.previewExcerpt .previewOverlay, .previewExcerpt .bottomBlur {
  display: none !important;
  opacity: 0 !important;
}


/* ---- V6 LOCK: preview shows full width + title (no crop) ---- */
.preview img, .previewExcerpt img, img.previewImg, .productPreview img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: top center !important;
}


/* ---- V6 LOCK: ROI link near top ---- */
.topBar .topLink{
  margin-left: auto;
  text-decoration: none;
  font-weight: 700;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
}
@media (max-width: 900px){
  .topBar{ gap: 10px; flex-wrap: wrap; }
  .topBar .topLink{ margin-left: 0; }
}


/* ---- V6 LOCK: ROI calculator pop (yellow) ---- */
#roi .card{
  border-color: rgba(255, 214, 10, .45) !important;
  box-shadow: 0 0 0 1px rgba(255, 214, 10, .18), 0 18px 55px rgba(255, 214, 10, .08);
  background: linear-gradient(180deg, rgba(255, 214, 10, .10), rgba(0,0,0,0));
}
#roi .btn{ border-color: rgba(255, 214, 10, .55); }


/* ---- V6 LOCK: hero ROI jump link ---- */
.roiJump{
  display: inline-block;
  margin-top: 8px;
  font-weight: 700;
  text-decoration: none;
  opacity: .9;
}
.roiJump:hover{ opacity: 1; }


/* ===== FINAL LOCK: REMOVE PREVIEW BLUR + SHOW FULL IMAGE ===== */

/* kill all overlay blur layers */
.preview::after,
.preview:after,
.preview .blur,
.preview .fade,
.preview .fog,
.preview .gradientFade,
.preview .bottomBlur,
.preview .previewOverlay,
.previewExcerpt::after,
.previewExcerpt .blur,
.previewExcerpt .fade,
.previewExcerpt .fog,
.previewExcerpt .gradientFade,
.previewExcerpt .bottomBlur,
.previewExcerpt .previewOverlay{
  display:none !important;
  opacity:0 !important;
  background:none !important;
  filter:none !important;
}

/* expand usable preview area without layout shift */
.preview,
.previewExcerpt{
  overflow:hidden !important;
}

/* ensure image uses full visible space */
.preview img,
.previewExcerpt img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:top center !important;
}


/* ===== FINAL LOCK: ROI yellow highlights + ROI proposition green ===== */

/* Yellow highlight for ROI jump buttons/links */
a.btn.secondary[href="#roi"],
a.topLink[href="#roi"],
a.roiJump[href="#roi"]{
  border-color: rgba(255, 214, 10, .80) !important;
  box-shadow: 0 0 0 1px rgba(255, 214, 10, .22), 0 18px 55px rgba(255, 214, 10, .10);
  background: linear-gradient(180deg, rgba(255, 214, 10, .22), rgba(0,0,0,0)) !important;
  color: rgba(255,255,255,.98) !important;
}

/* Yellow highlight for ROI calculator card + key output pill */
#roi .card{
  border-color: rgba(255, 214, 10, .55) !important;
  box-shadow: 0 0 0 1px rgba(255, 214, 10, .20), 0 18px 55px rgba(255, 214, 10, .10);
  background: linear-gradient(180deg, rgba(255, 214, 10, .12), rgba(0,0,0,0)) !important;
}

/* If calculator has a result pill/box, pop it yellow as well */
#roi .result,
#roi .estimate,
#roi .value,
#roi .calcResult,
#roi .output{
  border-color: rgba(255, 214, 10, .70) !important;
  background: rgba(255, 214, 10, .10) !important;
}

/* ROI Proposition section: green money feel */
#roi h2,
#roi .cardPad h2{
  color: rgba(70, 220, 140, 1) !important;
}
#roi .btn{
  border-color: rgba(70, 220, 140, .55) !important;
}


/* Yellow pop for the estimated value line */
.roiEstimate{
  border: 1px solid rgba(255, 214, 10, .70) !important;
  background: rgba(255, 214, 10, .10) !important;
  border-radius: 12px;
}


/* ===== FINAL LOCK: KILL blurZone + any remaining blur/backdrop effects ===== */
.blurZone{ display:none !important; opacity:0 !important; background:none !important; filter:none !important;
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
}
.preview, .previewExcerpt, .productPreview{
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}
.preview *, .previewExcerpt *, .productPreview *{
  filter:none !important;
  -webkit-filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
