/* Products / Solutions menus, shared by the homepage nav and the product-page masthead. */
.nav, .nav-links, .masthead, .masthead__inner, .product-nav { overflow: visible; }
.zk-menu { position: relative; display: inline-block; }
.zk-menu-trigger { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border: 0; border-radius: 999px; background: none; font: inherit; font-size: 14px; font-weight: 500; color: var(--zk-text-secondary, var(--secondary, #5f6561)); cursor: pointer; transition: color .18s ease, background .18s ease; }
.zk-menu-trigger::after { content: ""; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.zk-menu-trigger:hover, .zk-menu-trigger[aria-expanded="true"] { color: var(--zk-text, var(--ink, #101010)); background: rgba(22,22,22,.06); }
.zk-menu-trigger[aria-expanded="true"]::after { transform: translateY(1px) rotate(225deg); }
.zk-menu-trigger:focus-visible { outline: 2px solid var(--accent, #6656fb); outline-offset: 2px; }
.zk-menu-panel { position: absolute; left: -8px; top: calc(100% + 14px); z-index: 80; width: 620px; padding: 18px 18px 14px; border: 1px solid var(--zk-hairline, var(--hairline, rgba(16,16,16,.12))); border-radius: 18px; background: #fff; box-shadow: 0 24px 60px rgba(22,22,22,.12); text-align: left; }
.zk-menu-panel[hidden] { display: none; }
.zk-menu-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; }
.zk-menu-group h4 { margin: 4px 0 6px 12px; font-family: var(--font-mono, "Geist Mono", ui-monospace, monospace); font-size: 9.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--zk-text-secondary, var(--secondary, #5f6561)); }
.zk-menu-group a { display: grid; gap: 2px; padding: 9px 12px; border-radius: 12px; text-decoration: none; color: inherit; transition: background .15s ease; }
.zk-menu-group a:hover { background: rgba(22,22,22,.05); }
.zk-menu-group a strong { font-size: 14.5px; font-weight: 650; letter-spacing: -.015em; color: var(--zk-text, var(--ink, #101010)); }
.zk-menu-group a span { font-size: 12.5px; line-height: 1.4; color: var(--zk-text-secondary, var(--secondary, #5f6561)); }
.zk-menu-foot { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 12px 12px 0; padding-top: 12px; border-top: 1px solid var(--zk-hairline, var(--hairline, rgba(16,16,16,.12))); }
.zk-menu-foot a { font-size: 12.5px; font-weight: 500; color: var(--zk-text-secondary, var(--secondary, #5f6561)); text-decoration: none; }
.zk-menu-foot a:hover { color: var(--zk-text, var(--ink, #101010)); }
.nav-links .zk-menu-trigger { font-size: 14px; }
.product-nav .zk-menu-trigger { padding: 9px 12px; font-size: 14px; }
@media (max-width: 960px) { .zk-menu-panel { width: min(92vw, 620px); } .zk-menu-grid { grid-template-columns: 1fr; } }
