/* Storefront header + megamenu. Loaded only on pages that use this header. */
.kx-header{
  position:sticky;
  top:0;
  z-index:400;
  font-family:inherit;
  color:#0a0a0a;
}
.kx-header-bar{
  display:flex;
  align-items:center;
  gap:.75rem;
  min-height:4.25rem;
  padding:.55rem 1.15rem;
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(1.4) blur(16px);
  border-bottom:1px solid rgba(10,10,10,.08);
}
.kx-logo{
  display:flex;
  align-items:center;
  flex:none;
  width:7.2rem;
  color:#0a0a0a;
  text-decoration:none;
}
.kx-logo svg{display:block;width:100%;height:auto}
.kx-hnav{
  display:flex;
  align-items:center;
  gap:.15rem;
  min-width:0;
}
.kx-htab{
  appearance:none;
  border:0;
  background:transparent;
  color:#0a0a0a;
  font:inherit;
  font-weight:650;
  font-size:.95rem;
  line-height:1;
  padding:.6rem .72rem;
  border-radius:999px;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
}
.kx-htab:hover,.kx-htab.is-active{background:#0a0a0a;color:#fff}
.kx-htab.is-link:hover{background:#f0f0f3;color:#0a0a0a}
.kx-header-end{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.kx-login{
  display:inline-flex;
  align-items:center;
  height:2.6rem;
  padding:0 1rem;
  border-radius:999px;
  background:#0a0a0a;
  color:#fff;
  text-decoration:none;
  font-weight:750;
  font-size:.92rem;
  white-space:nowrap;
}
.kx-login:hover{background:#222}
.kx-burger{
  display:none;
  width:2.7rem;height:2.7rem;border-radius:999px;
  border:1px solid rgba(10,10,10,.12);
  background:#fff;
  padding:0;
  cursor:pointer;
  align-items:center;justify-content:center;flex-direction:column;gap:.28rem;
}
.kx-burger span{display:block;width:1rem;height:2px;background:#0a0a0a;border-radius:2px}
.kx-mega{
  position:absolute;
  left:0;right:0;top:100%;
  background:#fff;
  border-bottom:1px solid rgba(10,10,10,.08);
  box-shadow:0 28px 60px rgba(10,10,10,.12);
}
.kx-mega-shell{
  width:min(1180px,calc(100% - 2rem));
  margin:0 auto;
  padding:1.15rem 0 1.2rem;
  display:grid;
  grid-template-columns:13.5rem minmax(0,1fr);
  gap:1rem 1.25rem;
}
.kx-mega-rail{display:flex;flex-direction:column;gap:.3rem}
.kx-rail{
  appearance:none;border:0;background:#f4f4f6;color:#0a0a0a;
  text-align:left;font:inherit;font-weight:700;
  border-radius:.9rem;padding:.75rem .85rem;cursor:pointer;
  display:flex;align-items:center;gap:.6rem;
}
.kx-rail::before{
  content:"";width:.7rem;height:.7rem;border-radius:50%;background:var(--kx-dot,#00dd83);flex:none;
}
.kx-rail.is-active,.kx-rail:hover{background:#0a0a0a;color:#fff}
.kx-mega-panel{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 15.5rem;gap:1rem}
.kx-mega-panel[hidden]{display:none !important}
.kx-mega-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:.75rem}
.kx-mega-top p{margin:.2rem 0 0;color:#5c5f62;font-size:.95rem}
.kx-mega-kicker{
  font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#616365;
}
.kx-mega-all{font-weight:750;color:#0a0a0a;text-decoration:none;white-space:nowrap}
.kx-mega-all:hover{text-decoration:underline}
.kx-mega-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem 1.25rem}
.kx-mega-col{display:flex;flex-direction:column;gap:.1rem}
.kx-mega-link{
  display:block;padding:.42rem .5rem;border-radius:.65rem;
  color:#0a0a0a;text-decoration:none;font-size:.95rem;
}
.kx-mega-link:hover{background:#f4f4f6}
.kx-mega-link.is-hot{font-weight:750}
.kx-mega-promo{
  background:#0a0a0a;color:#fff;border-radius:1.2rem;padding:1rem 1rem .95rem;
  display:flex;flex-direction:column;gap:.4rem;align-self:start;
}
.kx-mega-promo .kx-badge{
  align-self:flex-start;background:#00dd83;color:#0a0a0a;
  font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  border-radius:999px;padding:.28rem .55rem;
}
.kx-mega-promo h3{
  margin:.35rem 0 0;font-family:"Roboto Condensed",sans-serif;
  font-size:1.55rem;line-height:.95;text-transform:uppercase;color:#fff;
}
.kx-mega-price{font-family:"Roboto Condensed",sans-serif;font-size:2rem;font-weight:700;line-height:1}
.kx-mega-promo p{margin:0;color:#c8c9cc;font-size:.85rem}
.kx-mega-promo a{
  margin-top:.35rem;display:inline-flex;justify-content:center;align-items:center;
  height:2.5rem;border-radius:999px;background:#00dd83;color:#0a0a0a;
  text-decoration:none;font-weight:800;
}
.kx-mega-foot{display:none}
@media (max-width:1100px){
  .kx-mega-panel{grid-template-columns:1fr}
  .kx-mega-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:991px){
  .kx-hnav{display:none}
  .kx-login-bar{display:none}
  .kx-burger{display:inline-flex}
  .kx-header.is-drawer .kx-mega{display:block}
  .kx-mega{
    max-height:calc(100dvh - 4.25rem);
    overflow:auto;
  }
  .kx-mega-shell{width:auto;margin:0;padding:1rem;grid-template-columns:1fr;gap:.75rem}
  .kx-mega-rail{flex-direction:row;overflow:auto;gap:.4rem}
  .kx-rail{white-space:nowrap;padding:.65rem .75rem}
  .kx-mega-cols{grid-template-columns:1fr}
  .kx-mega-foot{
    display:flex;gap:.5rem;flex-wrap:wrap;
    padding:0 1rem 1.1rem;
  }
  .kx-mega-foot a{
    display:inline-flex;align-items:center;height:2.6rem;padding:0 .95rem;
    border-radius:999px;text-decoration:none;font-weight:750;
    background:#f4f4f6;color:#0a0a0a;
  }
  .kx-mega-foot a[data-kx-auth]{background:#0a0a0a;color:#fff}
}
.kx-header.is-open .kx-burger span:first-child{transform:translateY(3.5px) rotate(45deg)}
.kx-header.is-open .kx-burger span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.kx-burger span{transition:transform .2s ease}
