/* V15: final shared header lock — same position/size on every page */

html{
  margin:0 !important;
  padding:0 !important;
  scrollbar-gutter:stable !important;
}

body{
  margin:0 !important;
  padding:0 !important;
}

.ml-menu-v8,
.ml-menu-v8 *{
  box-sizing:border-box !important;
  border-radius:0 !important;
}

.ml-menu-v8{
  position:sticky !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  z-index:999999 !important;
  margin:0 !important;
  padding:0 !important;
  background:rgba(6,20,47,.96) !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
}

.ml-menu-v8-inner{
  width:100% !important;
  max-width:1180px !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  margin:0 auto !important;
  padding:0 24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:22px !important;
}

.ml-menu-v8-logo{
  width:218px !important;
  min-width:218px !important;
  max-width:218px !important;
  height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
  color:#ffffff !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  font-size:23px !important;
  font-weight:950 !important;
  letter-spacing:-.055em !important;
  line-height:1 !important;
  flex:0 0 218px !important;
}

.ml-menu-v8-logo-word,
.ml-menu-v8-logo-accent,
.ml-menu-v8-logo-bolt{
  display:inline-flex !important;
  align-items:center !important;
  line-height:1 !important;
}

.ml-menu-v8-logo-word{
  color:#ffffff !important;
}

.ml-menu-v8-logo-accent{
  color:#4ee3ff !important;
  background:linear-gradient(90deg,#4ee3ff 0%,#58a6ff 58%,#ffffff 120%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  filter:drop-shadow(0 0 12px rgba(78,227,255,.25)) !important;
}

.ml-menu-v8-logo-bolt{
  margin-left:5px !important;
  color:#4ee3ff !important;
  font-size:19px !important;
  transform:translateY(-1px) !important;
}

.ml-menu-v8-desktop{
  height:44px !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:0 0 0 auto !important;
  padding:0 !important;
  flex:1 1 auto !important;
}

.ml-menu-v8-link,
.ml-menu-v8-drop-btn,
.ml-menu-v8-cta{
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  line-height:1 !important;
  font-family:inherit !important;
}

.ml-menu-v8-link,
.ml-menu-v8-drop-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 11px !important;
  color:rgba(255,255,255,.82) !important;
  background:transparent !important;
  border:1px solid transparent !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}

.ml-menu-v8-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 16px !important;
  color:#06142f !important;
  background:#ffffff !important;
  border:1px solid #ffffff !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:950 !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

.ml-menu-v8-drop{
  position:relative !important;
  height:44px !important;
  margin:0 !important;
  padding:0 !important;
}

.ml-menu-v8-panel{
  top:calc(100% + 10px) !important;
}

.ml-menu-v8-toggle{
  display:none !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 44px !important;
}

.ml-menu-v8-mobile{
  top:72px !important;
  height:calc(100vh - 72px) !important;
}

/* Remove accidental gaps directly after header */
.ml-menu-v8 + main,
.ml-menu-v8 + .site-main,
.ml-menu-v8 + div,
.ml-menu-v8 + section{
  margin-top:0 !important;
}

/* Kill old bottom CTA remnants if still injected by page CSS */
.maalampo-laskuri-visible-cta,
.ml-floating-cta,
.ml-sticky-cta,
.ml-bottom-cta,
.floating-cta,
.sticky-cta,
.bottom-cta,
.mobile-cta-bar,
.fixed-cta,
[class*="floating-cta"],
[class*="sticky-cta"],
[class*="bottom-cta"],
[class*="mobile-cta-bar"],
[class*="visible-cta"]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media(max-width:1040px){
  .ml-menu-v8-logo{
    width:202px !important;
    min-width:202px !important;
    max-width:202px !important;
    flex-basis:202px !important;
    font-size:21px !important;
  }

  .ml-menu-v8-link,
  .ml-menu-v8-drop-btn{
    padding:0 8px !important;
    font-size:13px !important;
  }

  .ml-menu-v8-cta{
    padding:0 12px !important;
    font-size:13px !important;
  }
}

@media(max-width:900px){
  .ml-menu-v8{
    height:68px !important;
    min-height:68px !important;
    max-height:68px !important;
  }

  .ml-menu-v8-inner{
    height:68px !important;
    min-height:68px !important;
    max-height:68px !important;
  }

  .ml-menu-v8-logo{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:0 1 auto !important;
    font-size:20px !important;
  }

  .ml-menu-v8-desktop,
  .ml-menu-v8-cta{
    display:none !important;
  }

  .ml-menu-v8-toggle{
    display:inline-flex !important;
  }

  .ml-menu-v8-mobile{
    top:68px !important;
    height:calc(100vh - 68px) !important;
  }
}
