/* Stepikin Studio — full-screen mobile menu (shared by kit pages and the homepage).
   Loaded by kit.css (@import) and linked directly by index.html. Every selector is scoped under
   .k-burger / .k-mmenu / html.k-mm-lock so it never touches the page it lands on. Behaviour: mmenu.js */
.k-burger{display:none;flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;padding:0;place-items:center;-webkit-tap-highlight-color:transparent}
.k-burger svg{width:16px;height:16px;display:block}
html.light .k-burger{border-color:rgba(0,0,0,.14);background:rgba(0,0,0,.03);color:#0a0a0a}
.k-burger:focus{outline:none}.k-burger:focus-visible{outline:2px solid #3b82ff;outline-offset:2px}
@media(max-width:900px){.k-burger{display:grid}}

html.k-mm-lock,html.k-mm-lock body{overflow:hidden!important}

.k-mmenu{
  --mm-bg:#000;--mm-fg:#fff;--mm-dim:rgba(255,255,255,.4);--mm-mute:rgba(255,255,255,.5);--mm-line:rgba(255,255,255,.12);
  --mm-acc:#3b82ff;--mm-pill-bg:#fff;--mm-pill-fg:#000;
  position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;
  background:var(--mm-bg);color:var(--mm-fg);font-family:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;
  padding:max(12px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom));
  overflow-y:auto;overscroll-behavior:contain;
  visibility:hidden;opacity:0;transition:opacity .18s ease,visibility 0s linear .18s
}
html.light .k-mmenu{--mm-bg:#fff;--mm-fg:#0a0a0a;--mm-dim:rgba(0,0,0,.38);--mm-mute:rgba(0,0,0,.5);--mm-line:rgba(0,0,0,.1);--mm-acc:#1f5fe0;--mm-pill-bg:#0a0a0a;--mm-pill-fg:#fff}
.k-mmenu.open{visibility:visible;opacity:1;transition:opacity .18s ease}
.k-mmenu *{box-sizing:border-box;margin:0;padding:0}
.k-mmenu a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
.k-mmenu button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
.k-mmenu :focus{outline:none}.k-mmenu :focus-visible{outline:2px solid var(--mm-acc);outline-offset:3px;border-radius:8px}

/* header row */
.k-mm-head{display:flex;align-items:center;gap:6px;min-height:52px}
.k-mm-brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;letter-spacing:-.02em;margin-right:auto;min-width:0;white-space:nowrap}
.k-mm-name{overflow:hidden;text-overflow:ellipsis}
.k-mm-mark{width:34px;height:34px;flex:none;border-radius:10px;display:grid;place-items:center;background:linear-gradient(160deg,#1b1d24,#0a0b0e);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
html.light .k-mm-mark{background:#0a0a0a}
.k-mm-mark svg{width:20px;height:18px;overflow:visible}.k-mm-mark path{fill:none;stroke:#fff;stroke-width:46;stroke-linecap:round;stroke-linejoin:round}
.k-mm-ico{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:50%;border:0;background:none;color:var(--mm-mute);cursor:pointer;font-weight:500;font-size:13px}
.k-mm-ico svg{width:16px;height:16px}
.k-mm-pill{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:38px;padding:0 16px;border-radius:999px;background:var(--mm-pill-bg);color:var(--mm-pill-fg)!important;font-size:14px;font-weight:500;white-space:nowrap}
.k-mm-x{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--mm-line);background:none;cursor:pointer}
.k-mm-x svg{width:14px;height:14px}

/* numbered list */
.k-mm-list{list-style:none;margin-top:clamp(12px,3vh,32px)}
.k-mm-list li{border-bottom:1px solid var(--mm-line);overflow:hidden}
.k-mm-list li:first-child{border-top:1px solid var(--mm-line)}
.k-mm-row{display:flex;align-items:center;gap:14px;padding:clamp(6px,1.3vh,12px) 2px;color:var(--mm-dim)!important;transition:color .2s}
.k-mm-row:hover,.k-mm-row:active{color:var(--mm-fg)!important}
.k-mm-row[aria-current]{color:var(--mm-fg)!important}
.k-mm-n{flex:none;width:22px;font:500 12px/1 ui-monospace,'SF Mono',Menlo,Consolas,monospace;color:var(--mm-dim);letter-spacing:.02em;align-self:flex-start;margin-top:.9em}
.k-mm-t{flex:1;min-width:0;font-size:clamp(34px,min(12vw,6.4vh),56px);font-weight:500;line-height:1.08;letter-spacing:-.035em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.k-mm-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--mm-acc);opacity:0}
.k-mm-row[aria-current] .k-mm-dot{opacity:1}

/* secondary links */
.k-mm-sub{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.k-mm-sub a{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border:1px solid var(--mm-line);border-radius:999px;font-size:14px;color:var(--mm-mute)!important}
.k-mm-sub a[aria-current]{color:var(--mm-fg)!important;border-color:var(--mm-fg)}
.k-mm-sub a[aria-current]::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--mm-acc)}

/* bottom CTA + email */
.k-mm-foot{margin-top:auto;padding-top:20px}
.k-mm-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;border-radius:999px;background:var(--mm-acc);color:#fff!important;font-size:16px;font-weight:500}
.k-mm-mail{display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--mm-mute)!important}

/* staggered slide-up reveal (~350ms total) */
.k-mm-a{opacity:0;transform:translateY(18px)}
.k-mmenu.open .k-mm-a{opacity:1;transform:none;transition:opacity .22s ease,transform .26s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0) * 22ms)}
.k-mm-list .k-mm-a{transform:translateY(100%)}
.k-mmenu.open .k-mm-list .k-mm-a{transform:none}
@media(prefers-reduced-motion:reduce){
  .k-mmenu,.k-mmenu.open{transition:none}
  .k-mm-a,.k-mm-list .k-mm-a{opacity:1;transform:none}
  .k-mmenu.open .k-mm-a{transition:none}
}
@media(min-width:901px){.k-mmenu{display:none}}

/* the big CTA sits at the bottom; keep the header row for the brand */
.k-mmenu .k-mm-pill{display:none!important}
.k-mmenu .k-mm-name{white-space:nowrap;overflow:visible;text-overflow:clip}
