body.dialog-open{overflow:hidden}
.menu-button{position:relative;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--pg-spark,#6638ed);border-radius:12px;color:var(--ink);background:transparent;overflow:hidden;isolation:isolate;cursor:pointer;box-shadow:var(--pg-control-glow)}
.menu-button:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--pg-spark,#6638ed);transform:translateY(105%);transition:transform .55s cubic-bezier(.16,1,.3,1)}
.main-menu-panel{position:fixed;inset:0;margin:18px auto auto;width:calc(100% - 36px);max-width:1400px;max-height:calc(100svh - 36px);overflow:auto;padding:36px 45px 24px;border:1px solid #17244224;border-radius:24px;background:#f5f4f8;color:#101b36;box-shadow:0 30px 100px #0004;transform-origin:center bottom;backface-visibility:hidden;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
.main-menu-panel::backdrop{background:#09112199;backdrop-filter:blur(8px)}
.main-menu-panel .menu-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:28px;border-bottom:1px solid #17244224;font-size:12px;letter-spacing:.08em}
.main-menu-panel .menu-close{border:1px solid #17244233;border-radius:100px;padding:10px 18px;background:transparent;color:inherit;min-height:44px;font:inherit;cursor:pointer}
.main-menu-panel .menu-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;padding:35px 0}
.main-menu-panel .menu-layout nav{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin:0;padding:0;width:auto;order:initial;background:none;box-shadow:none;border:0}
.main-menu-panel .menu-layout nav a{display:block;padding:0;color:inherit;font-size:clamp(28px,3.5vw,52px);line-height:1.12;font-weight:650;letter-spacing:-.045em;text-decoration:none}
.main-menu-panel .menu-route-title{display:inline-block;transition:transform .55s cubic-bezier(.16,1,.3,1),color .3s}
.main-menu-panel .menu-feature{align-self:center;padding:30px;border-radius:18px;background:#e9e3fc;min-width:0}
.main-menu-panel .menu-feature .menu-eyebrow{font-size:11px;font-weight:650;letter-spacing:.12em;color:#6638ed}
.main-menu-panel .menu-feature h2{font-size:clamp(26px,3vw,43px);line-height:1.12;letter-spacing:-.04em;margin:20px 0;font-weight:650}
.main-menu-panel .menu-feature p{font-size:15px;line-height:1.7}
.main-menu-panel .menu-feature a{display:inline-block;margin-top:22px;color:#5425cf;font-size:15px;text-decoration:underline}
.main-menu-panel .menu-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid #17244224;padding-top:22px;font-size:14px}
@media(hover:hover) and (pointer:fine){.menu-button:hover:before{transform:translateY(0)}.menu-button:hover{color:white}.main-menu-panel .menu-layout nav a:hover .menu-route-title{transform:translateX(10px);color:#6638ed}}
.main-menu-panel a:focus-visible,.main-menu-panel button:focus-visible,.menu-button:focus-visible{outline:3px solid var(--pg-spark,#6638ed);outline-offset:5px}
@media(prefers-color-scheme:dark){.main-menu-panel{background:#0d1424;color:#edf2fa;border-color:#a8b9d033}.main-menu-panel .menu-top,.main-menu-panel .menu-bottom,.main-menu-panel .menu-close{border-color:#a8b9d033}.main-menu-panel .menu-feature{background:#192840}.main-menu-panel .menu-feature .menu-eyebrow,.main-menu-panel .menu-feature a,.main-menu-panel .menu-layout nav a:hover .menu-route-title{color:#28d8f6}.menu-button:hover{color:#071b28}}
@media(max-width:760px){.main-menu-panel{margin:10px auto auto;width:calc(100% - 20px);max-height:calc(100svh - 20px);padding:23px;border-radius:20px}.main-menu-panel .menu-layout{grid-template-columns:1fr;padding:28px 0}.main-menu-panel .menu-feature{display:none}.main-menu-panel .menu-layout nav{gap:18px}.main-menu-panel .menu-layout nav a{font-size:clamp(27px,7.5vw,37px)}.menu-button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.menu-button:before,.main-menu-panel .menu-route-title{transition:none!important}.main-menu-panel .menu-layout nav a:hover .menu-route-title{transform:none}}
@media(forced-colors:active){.menu-button:before{display:none}.menu-button:hover{color:ButtonText}.main-menu-panel{border:1px solid CanvasText}.main-menu-panel .menu-layout nav a{color:LinkText}}
/* Match the brand's purple light-mode and cyan dark-mode controls. */
.menu-button{border-color:#6638ed}.menu-button:before{background:#6638ed}
.main-menu-panel a:focus-visible,.main-menu-panel button:focus-visible,.menu-button:focus-visible{outline-color:#6638ed}
@media(prefers-color-scheme:dark){.menu-button{border-color:#28d8f6}.menu-button:before{background:#28d8f6}.main-menu-panel a:focus-visible,.main-menu-panel button:focus-visible,.menu-button:focus-visible{outline-color:#28d8f6}}
.main-menu-panel .menu-layout nav a{font-size:clamp(30px,4vw,56px);line-height:1.1}
.main-menu-panel .menu-layout nav{gap:20px}
.main-menu-panel .menu-route-title{transition:transform 1.5s cubic-bezier(.16,1,.3,1),color .3s}
.main-menu-panel .menu-layout nav a:focus-visible .menu-route-title{transform:translateX(10px);color:#6638ed}
@media(prefers-color-scheme:dark){.main-menu-panel .menu-layout nav a:focus-visible .menu-route-title{color:#28d8f6}}
@media(max-width:760px){.main-menu-panel .menu-layout nav a{font-size:clamp(27px,7.5vw,37px)}}
@media(prefers-reduced-motion:reduce){.main-menu-panel .menu-layout nav a:focus-visible .menu-route-title{transform:none}}
