.product-menu {
    --pm-ink:#28344d; --pm-muted:#64718a; --pm-line:#e8eaf1;
    --pm-paper:#fff; --pm-canvas:#f6f7fb; --pm-accent:#6252c5;
    position:static; color:var(--pm-ink); font-family:inherit;
}
.product-menu * { box-sizing:border-box; }
.product-menu [hidden] { display:none!important; }
.product-menu>summary { display:flex; align-items:center; justify-content:center; gap:7px; min-height:44px; cursor:pointer; list-style:none; font-size:12px; font-weight:600; white-space:nowrap; color:inherit; }
.product-menu>summary::-webkit-details-marker { display:none; }
.product-menu>summary>svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.6; flex-shrink:0; }
.product-menu>summary>.product-menu-chevron { width:13px; height:13px; transition:transform .15s; }
.product-menu[open]>summary { color:var(--pm-accent); }
.product-menu[open]>summary>.product-menu-chevron { transform:rotate(180deg); }
.header-inner { position:relative; }
.product-menu-dropdown { position:absolute; top:calc(100% - 2px); inset-inline:0; margin-inline:auto; width:min(1200px,calc(100vw - 48px)); max-height:min(82dvh,780px); z-index:150; display:flex; flex-direction:column; background:var(--pm-paper); border:1px solid var(--pm-line); border-radius:20px; box-shadow:0 22px 70px #202a5026; text-align:start; isolation:isolate; }
.product-menu-dropdown>header { display:flex; justify-content:space-between; align-items:center; gap:22px; padding:20px 24px 16px; flex-shrink:0; }
.product-menu-dropdown>header strong { font-size:16px; line-height:1.9; font-weight:700; }
.product-menu-dropdown>header p { color:var(--pm-muted); font-size:12px; line-height:1.9; margin:3px 0 0; }
.product-menu-dropdown a { text-decoration:none; color:inherit; }
.product-menu-dropdown>header>a { min-height:44px; align-items:center; font-size:12px; color:var(--pm-accent); display:inline-flex; gap:12px; white-space:nowrap; }
.product-menu-groups { display:grid; grid-template-columns:1fr 2.05fr 1fr; gap:18px; padding:8px 20px 20px; overflow-y:auto; overscroll-behavior:contain; min-height:0; scrollbar-width:thin; }
.product-menu-family { min-width:0; }
.product-menu-family-rates { grid-column:1; grid-row:1; }
.product-menu-family-identity { grid-column:1; grid-row:2; }
.product-menu-family-payments { grid-column:2; grid-row:1/span 2; }
.product-menu-family-themes { grid-column:3; grid-row:1; }
.product-menu-family-apps { grid-column:3; grid-row:2; }
.product-menu-family-payments>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 10px; }
.product-menu-family h2 { display:flex; align-items:center; gap:8px; font-family:inherit; color:var(--pm-accent); font-size:12px; font-weight:600; letter-spacing:0; line-height:1.9; margin:0 0 8px; padding:0 8px; }
.product-menu-family h2>span { display:grid; place-items:center; font:10px/1 Arial,sans-serif; min-width:20px; height:20px; background:var(--pm-canvas); border:1px solid var(--pm-line); color:var(--pm-muted); border-radius:6px; }
.product-menu-item { display:flex; align-items:center; gap:9px; border-radius:11px; padding:10px 7px; transition:background .15s; min-height:76px; }
.product-menu-item:hover,.product-menu-item:focus-visible { background:var(--pm-canvas); outline-color:var(--pm-accent); }
.product-menu-item img { width:50px!important; height:39px!important; object-fit:cover; object-position:top; border:1px solid var(--pm-line); border-radius:7px; flex-shrink:0; display:block; background:#fff; }
.product-menu-item>span { min-width:0; display:block; }
.product-menu-item b { font-size:12px; display:block; font-weight:600; line-height:1.9; overflow-wrap:anywhere; }
.product-menu-item small { font-size:10px; display:block; color:var(--pm-muted); line-height:1.9; margin-top:3px; }
.product-menu-item>i { font-style:normal; font-size:12px; color:var(--pm-muted); margin-inline-start:auto; flex-shrink:0; }
.product-menu-dropdown>footer { display:flex; align-items:center; justify-content:space-between; gap:20px; background:var(--pm-canvas); padding:8px 24px; border-top:1px solid var(--pm-line); border-radius:0 0 20px 20px; flex-shrink:0; font-size:11px; color:var(--pm-muted); }
.product-menu-dropdown>footer a { display:inline-flex; align-items:center; gap:12px; min-height:40px; color:var(--pm-accent); font-size:12px; }
.product-menu-panel { position:relative; z-index:110; }
.product-menu-panel>summary { border:1px solid var(--pm-line); border-radius:10px; background:var(--pm-paper); padding:8px 12px; min-height:44px; }
.product-menu-panel .product-menu-dropdown { position:fixed; inset-inline-start:auto; inset-inline-end:26px; top:82px; width:min(1200px,calc(100vw - 48px)); max-height:calc(100dvh - 105px); }
.panel-header-actions:has(.product-menu[open]) { z-index:160; }
.dark .product-menu { --pm-ink:#e7eaf6; --pm-muted:#a4afc8; --pm-line:#35405a; --pm-paper:#1c2438; --pm-canvas:#161e30; --pm-accent:#baabff; }
.main-nav:has(.product-menu) { gap:18px; }
.product-menu :focus-visible { outline:2px solid var(--pm-accent); outline-offset:3px; }
@media(min-width:961px) and (max-width:1180px) {
    .header-inner { gap:14px; min-height:80px; }
    .main-nav:has(.product-menu) { gap:11px; }
    .main-nav:has(.product-menu)>a { font-size:11px; }
    .main-nav .product-menu>summary { font-size:11px; gap:4px; }
    .brand { font-size:20px; }
    .brand img.brand-mark { width:50px; height:50px; }
    .header-actions { gap:6px; }
    .header-account { padding:9px 12px; }
    .appearance-button { min-width:35px; height:39px; padding:7px; }
    .product-menu-groups { grid-template-columns:1fr 1.8fr 1fr; gap:10px; padding-inline:14px; }
    .product-menu-item img { width:40px!important; height:33px!important; }
    .product-menu-item { gap:7px; }
    .product-menu-item b { font-size:11px; }
}
@media(max-width:960px) {
    .main-nav .product-menu { width:100%; }
    .main-nav .product-menu>summary { justify-content:flex-start; padding:12px 5px; font-size:13px; }
    .main-nav .product-menu>summary>.product-menu-chevron { margin-inline-start:auto; }
    .main-nav .product-menu-dropdown { position:static; width:100%; max-height:65dvh; margin:5px 0 12px; border-radius:12px; box-shadow:none; }
    .product-menu-dropdown>header { padding:14px 16px 10px; gap:12px; }
    .product-menu-dropdown>header strong { font-size:14px; }
    .product-menu-dropdown>header>a { font-size:11px; gap:5px; }
    .product-menu-dropdown>header p { font-size:11px; }
    .product-menu-groups { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding:6px 12px 16px; }
    .product-menu-family-rates,.product-menu-family-identity,.product-menu-family-payments,.product-menu-family-themes,.product-menu-family-apps { grid-column:auto; grid-row:auto; }
    .product-menu-family-payments { grid-column:1/-1; }
    .product-menu-item { min-height:70px; }
    .product-menu-dropdown>footer { padding:6px 16px; gap:12px; }
    .product-menu-dropdown>footer>span { max-width:55%; }
    .product-menu-panel .product-menu-dropdown { inset-inline:12px; top:78px; width:calc(100vw - 24px); max-height:calc(100dvh - 100px); }
}
@media(max-width:600px) {
    .product-menu-panel>summary { padding:8px 10px; width:auto; min-height:44px; font-size:11px; }
    .product-menu-panel>summary>span,.product-menu-panel>summary>.product-menu-chevron { display:block; }
    .product-menu-panel .product-menu-dropdown { top:72px; }
    .product-menu-groups { grid-template-columns:minmax(0,1fr); gap:16px; }
    .product-menu-family-payments { grid-column:auto; }
    .product-menu-item img { width:56px!important; height:42px!important; }
    .product-menu-item b { font-size:12px; }
    .product-menu-dropdown>footer>span { display:none; }
    .product-menu-dropdown>footer>a { width:100%; display:flex; justify-content:space-between; }
    .product-menu-dropdown>header { align-items:flex-start; }
}
@media(prefers-reduced-motion:reduce) { .product-menu * { transition:none!important; } }
/* The outer mobile navigation owns scrolling, including short landscape screens. */
@media(max-width:960px) {
    .menu-ready .main-nav { max-height:calc(100dvh - 92px); overflow-y:auto; flex-wrap:nowrap; justify-content:flex-start; overscroll-behavior:contain; scrollbar-width:thin; }
    .menu-ready .main-nav>* { flex-shrink:0; }
    .main-nav .product-menu-dropdown { max-height:none; }
    .main-nav .product-menu-groups { overflow:visible; }
}

.product-menu-groups{padding-top:14px;border-top:1px solid var(--pm-line)}
