/* ─── Mobile hamburger + drawer ────────────────────────────────
   Auto-injected by /assets/nav-mobile.js on every page with a
   .nav .nav-inner > .nav-links structure. Hidden above 900px.
   ─────────────────────────────────────────────────────────── */

/* Hamburger button — only visible on mobile */
.nav-hamburger{
  display:none;
  background:transparent;
  border:0;
  cursor:pointer;
  padding:8px;
  margin-left:6px;
  color:#1E2230;
  position:relative;
  z-index:60;
  border-radius:8px;
  transition:background .15s ease;
}
.nav-hamburger:hover{background:#F1F2F5}
.nav-hamburger svg{width:24px;height:24px;display:block}
.nav-hamburger.is-open svg .top{transform:translate(0,5px) rotate(45deg);transform-origin:center}
.nav-hamburger.is-open svg .mid{opacity:0}
.nav-hamburger.is-open svg .bot{transform:translate(0,-5px) rotate(-45deg);transform-origin:center}
.nav-hamburger svg line{transition:transform .25s ease, opacity .15s ease;transform-origin:center}
@media (max-width:900px){.nav-hamburger{display:inline-flex;align-items:center;justify-content:center}}

/* Hide the desktop Contact button on mobile so the hamburger sits alone on the right */
@media (max-width:900px){.nav-inner > .nav-contact{display:none}}

/* Backdrop overlay behind the drawer */
.nav-drawer-backdrop{
  position:fixed;inset:0;
  background:rgba(10,10,11,.42);
  z-index:199;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s ease;
}
.nav-drawer-backdrop.is-open{opacity:1;pointer-events:auto}

/* The drawer itself */
.nav-drawer{
  position:fixed;
  top:0;right:0;bottom:0;
  width:100%;max-width:360px;
  background:#fff;
  z-index:200;
  transform:translateX(100%);
  transition:transform .3s cubic-bezier(.22,.61,.36,1);
  display:flex;flex-direction:column;
  box-shadow:-18px 0 60px -20px rgba(10,10,11,.22);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
.nav-drawer.is-open{transform:translateX(0)}

.nav-drawer-head{
  display:flex;justify-content:space-between;align-items:center;
  padding:18px 22px;
  border-bottom:1px solid #E8EAEE;
  position:sticky;top:0;background:#fff;z-index:1;
}
.nav-drawer-brand{
  font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:#8B92A1;font-weight:700;
}
.nav-drawer-close{
  background:transparent;border:0;cursor:pointer;
  width:38px;height:38px;
  display:flex;align-items:center;justify-content:center;
  color:#1E2230;padding:0;border-radius:8px;
  transition:background .15s ease;
}
.nav-drawer-close:hover{background:#F1F2F5}
.nav-drawer-close svg{width:22px;height:22px;display:block}

.nav-drawer-links{
  display:flex;flex-direction:column;
  padding:14px 0 18px;flex:1 1 auto;
}
.nav-drawer-links a{
  padding:14px 24px;
  font-size:16.5px;font-weight:500;
  color:#1E2230;
  letter-spacing:-0.005em;
  text-decoration:none;
  transition:background .15s ease, color .15s ease;
  display:block;
}
.nav-drawer-links a:hover,.nav-drawer-links a:focus{background:#FAFAF8;color:#FF6B0A;outline:none}
.nav-drawer-links a.is-current{color:#FF6B0A;font-weight:600;background:#FFEFE0}

.nav-drawer-section{
  font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:#8B92A1;
  padding:18px 24px 6px;
}
.nav-drawer-sub{padding-left:36px !important;font-size:15.5px !important;color:#4D5466 !important}

/* Accordion group (e.g. Deployments) */
.nav-drawer-group{display:flex;flex-direction:column}
.nav-drawer-toggle{
  display:flex;align-items:center;justify-content:space-between;
  width:100%;
  background:transparent;border:0;cursor:pointer;
  padding:14px 24px;
  font-family:inherit;
  font-size:16.5px;font-weight:500;
  color:#1E2230;
  letter-spacing:-0.005em;
  text-align:left;
  transition:background .15s ease, color .15s ease;
}
.nav-drawer-toggle:hover,.nav-drawer-toggle:focus{background:#FAFAF8;color:#FF6B0A;outline:none}
.nav-drawer-toggle .nav-drawer-chevron{
  width:18px;height:18px;
  color:#8B92A1;
  flex:0 0 auto;
  transition:transform .25s ease, color .15s ease;
}
.nav-drawer-toggle:hover .nav-drawer-chevron{color:#FF6B0A}
.nav-drawer-group.is-open .nav-drawer-toggle .nav-drawer-chevron{transform:rotate(90deg);color:#FF6B0A}
.nav-drawer-group.is-open .nav-drawer-toggle{color:#FF6B0A}
.nav-drawer-sub-list{
  max-height:0;overflow:hidden;
  transition:max-height .3s ease;
  background:#FAFAF8;
}
.nav-drawer-group.is-open .nav-drawer-sub-list{max-height:560px}
.nav-drawer-sub-list a{
  padding-left:36px !important;
  font-size:15.5px !important;
  color:#4D5466 !important;
  background:transparent !important;
}
.nav-drawer-sub-list a:hover,.nav-drawer-sub-list a:focus{
  background:#fff !important;color:#FF6B0A !important;
}
.nav-drawer-sub-list a.is-current{
  color:#FF6B0A !important;font-weight:600;
  background:#FFEFE0 !important;
}

.nav-drawer-cta{
  margin:8px 22px 24px;
  padding:14px 18px;
  background:#0A0A0B;color:#fff !important;
  border-radius:999px;
  font-size:15.5px;font-weight:600;
  text-align:center;
  text-decoration:none;
  display:block;
  transition:background .15s ease, transform .12s ease;
  letter-spacing:-0.005em;
}
.nav-drawer-cta:hover{background:#000;transform:translateY(-1px)}

/* lock body scroll when drawer open */
body.nav-drawer-open{overflow:hidden}

@media (prefers-reduced-motion: reduce){
  .nav-drawer,.nav-drawer-backdrop,.nav-hamburger svg line{transition:none}
}
