/* Header navigation only. Submenus are one level and remain within the viewport. */
.software-menu{--menu-primary:#2563eb;--menu-primary-dark:#1d4ed8;--menu-text:#0f172a;--menu-muted:#475569;--menu-border:#e2e8f0;--menu-hover:#eff6ff;position:sticky;top:0;z-index:800;width:100%;background:#fff;color:var(--menu-text);border-bottom:1px solid var(--menu-border);box-shadow:0 4px 18px #0b172908;isolation:isolate}
.software-menu__nav{font-family:inherit}
.software-menu__list,.software-menu__submenu{margin:0;padding:0;list-style:none}
.software-menu__item{min-width:0}
.software-menu__link,.software-menu__sublink,.software-menu__hamburger,.software-menu__close{font-family:inherit;font-size:14px;line-height:1.5;text-decoration:none;cursor:pointer;color:inherit}
.software-menu__link{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px 12px;border-radius:10px;font-weight:650;list-style:none;white-space:nowrap}
.software-menu__link::-webkit-details-marker{display:none}
.software-menu__link::marker{content:''}
.software-menu__link>span:not(.fa-svg-wrap){min-width:0}
.software-menu__icon{flex:0 0 18px;width:18px;height:18px}
.software-menu__arrow{flex:0 0 10px;width:10px;height:10px;margin-left:3px;transition:transform .18s ease}
.software-menu__dropdown[open]>summary .software-menu__arrow{transform:rotate(180deg)}
.software-menu__link:hover,.software-menu__sublink:hover,.software-menu__hamburger:hover,.software-menu__close:hover,.software-menu__link.is-active,.software-menu__sublink[aria-current="page"],.software-menu__dropdown[open]>summary{background:var(--menu-hover);color:var(--menu-primary)}
.software-menu :is(a,button,summary):focus-visible{outline:2px solid var(--menu-primary);outline-offset:3px}
.software-menu__nav--desktop{width:100%;max-width:1200px;margin-inline:auto;padding:8px 16px;overflow:visible}
.software-menu__nav--desktop>.software-menu__list{display:flex;flex-wrap:nowrap;align-items:center;gap:4px}
.software-menu__nav--desktop .software-menu__item--cta{margin-left:auto}
.software-menu__item--cta>.software-menu__link{justify-content:center;background:var(--menu-primary);color:#fff;box-shadow:0 5px 15px #2563eb20}
.software-menu__item--cta>.software-menu__link:hover{background:var(--menu-primary-dark);color:#fff}
.software-menu__dropdown{position:relative}
.software-menu__dropdown:not([open])>.software-menu__submenu{display:none}
.software-menu__dropdown[open]>.software-menu__submenu{display:grid;gap:3px}
.software-menu__nav--desktop .software-menu__submenu{position:absolute;top:calc(100% + 6px);left:0;z-index:810;width:268px;max-width:calc(100vw - 32px);padding:9px;border:1px solid var(--menu-border);border-radius:13px;background:#fff;box-shadow:0 14px 36px #0f172a20}
.software-menu__nav--desktop .software-menu__submenu::before{content:'';position:absolute;left:0;right:0;top:-9px;height:9px}
.software-menu__nav--desktop .software-menu__dropdown[data-align="end"]>.software-menu__submenu{left:auto;right:0}
.software-menu__sublink{display:flex;align-items:center;gap:11px;min-height:46px;padding:11px 12px;border-radius:8px;color:var(--menu-muted);font-weight:550;overflow-wrap:anywhere}
.software-menu__subicon{width:18px;height:18px;flex:0 0 18px;color:var(--menu-primary)}
.software-menu__mobile-bar{display:none}
.software-menu__hamburger,.software-menu__close{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:44px;min-height:44px;padding:10px 12px;border:0;border-radius:8px;background:transparent}
.software-menu__sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--menu-border);padding-bottom:12px;margin-bottom:12px}
.software-menu__sidebar-header h2{margin:0;font-size:20px}
.software-mobile-popover{display:none;position:fixed;inset:0 auto 0 0;margin:0;width:min(360px,92vw);height:100vh;height:100dvh;max-height:none;max-width:none;padding:20px 16px;background:#fff;color:#0f172a;border:0;overflow-y:auto;overscroll-behavior:contain;box-shadow:10px 0 36px #0f172a30;font-family:inherit;text-align:left;z-index:1100}
.software-mobile-popover:popover-open,.software-mobile-popover.is-open{display:block}
.software-mobile-popover::backdrop{background:#0f172a80}
.software-menu__nav--mobile>.software-menu__list{display:flex;flex-direction:column;gap:5px}
.software-menu__nav--mobile .software-menu__link{white-space:normal}
.software-menu__nav--mobile .software-menu__arrow{margin-left:auto}
.software-menu__nav--mobile .software-menu__submenu{position:static;width:auto;margin:6px 0 10px 16px;padding:5px 0 5px 8px;border-left:2px solid #dbeafe;background:#f8fafc;border-radius:0 9px 9px 0}
.software-menu__nav--mobile .software-menu__item--cta{margin-top:12px}
@media(max-width:1100px){.software-menu__nav--desktop{display:none}.software-menu__mobile-bar{display:flex;padding:7px 16px}}
@media(min-width:1101px){.software-mobile-popover:popover-open,.software-mobile-popover.is-open{display:none}}
@media(prefers-reduced-motion:reduce){.software-menu__arrow{transition:none}}

/* Dynamic category tree: desktop flyouts and independently expandable mobile levels. */
.software-menu__submenu .software-menu__item{position:relative}
.software-menu__submenu .software-menu__sublink{width:100%;text-align:left}
.software-menu__submenu .software-menu__arrow{margin-left:auto}
.software-menu__submenu .software-menu__sublink.is-active{background:var(--menu-hover);color:var(--menu-primary)}
.software-menu__nav--desktop .software-menu__submenu .software-menu__submenu{position:absolute;top:-9px;left:calc(100% + 4px);right:auto;width:268px}
.software-menu__nav--desktop .software-menu__submenu .software-menu__dropdown[data-align="end"]>.software-menu__submenu{left:auto;right:calc(100% + 4px)}
.software-menu__nav--desktop .software-menu__submenu .software-menu__dropdown[data-align="start"]>.software-menu__submenu{left:calc(100% + 4px);right:auto}
.software-menu__nav--desktop .software-menu__submenu .software-menu__submenu::before{top:0;left:-6px;right:auto;width:6px;height:100%}
.software-menu__nav--desktop .software-menu__submenu .software-menu__dropdown[data-align="end"]>.software-menu__submenu::before{left:auto;right:-6px}
.software-menu__nav--mobile .software-menu__submenu .software-menu__submenu{position:static;width:auto;max-width:100%;margin:4px 0 8px 12px;border:0;border-left:2px solid #bfdbfe;box-shadow:none;padding:4px 0 4px 8px;background:#eff6ff}
