/* Product Menu v1.2.1 — fluid root rail width + on-demand mega submenu */
.pf-pm{position:relative;display:inline-flex;flex-direction:column;width:auto;max-width:100%;overflow:visible!important;font-family:inherit;color:var(--pf-pm-root-text,inherit);z-index:60}
.pf-pm *{box-sizing:border-box}
.pf-pm a{text-decoration:none;color:inherit}
.pf-pm button{font:inherit}

/* Trigger */
.pf-pm__trigger{display:flex;align-items:center;gap:10px;width:var(--pf-pm-trigger-w,280px);max-width:100%;height:var(--pf-pm-trigger-h,44px);padding:0 14px;border:1px solid var(--pf-pm-trigger-border,transparent);border-radius:var(--pf-pm-trigger-radius,8px);background:var(--pf-pm-trigger-bg,#0b5cff);color:var(--pf-pm-trigger-color,#fff);cursor:pointer;white-space:nowrap;font-size:var(--pf-pm-trigger-fs,15px);font-weight:var(--pf-pm-trigger-fw,600);text-transform:var(--pf-pm-trigger-transform,none);transition:background-color .16s ease,color .16s ease,border-color .16s ease}
.pf-pm__trigger:hover,.pf-pm.is-open .pf-pm__trigger{background:var(--pf-pm-trigger-hover-bg,var(--pf-pm-trigger-bg,#0b5cff))}
.pf-pm--mode-always .pf-pm__trigger{cursor:default}
.pf-pm__hamb{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;color:var(--pf-pm-trigger-icon,currentColor);font-size:16px}
.pf-pm__trigger-label{min-width:0;overflow:hidden;text-overflow:ellipsis}
.pf-pm__trigger-caret{margin-left:auto;font-size:10px;opacity:.8;transition:transform .16s}
.pf-pm.is-open .pf-pm__trigger-caret{transform:rotate(180deg)}

/* Root category shell */
.pf-pm__panel-wrap{position:absolute;top:calc(100% + 8px);left:0;width:var(--pf-pm-rail-w,280px);visibility:hidden;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility .15s;z-index:1000;overflow:visible!important}
.pf-pm.is-open .pf-pm__panel-wrap{visibility:visible;opacity:1;transform:none;pointer-events:auto}
.pf-pm--mode-always{width:100%;max-width:100%}
.pf-pm--mode-hover,.pf-pm--mode-click{width:var(--pf-pm-trigger-w,280px);max-width:100%}
.pf-pm--mode-always .pf-pm__panel-wrap{position:relative;top:auto;left:auto;margin-top:8px;visibility:visible;opacity:1;transform:none;pointer-events:auto;width:var(--pf-pm-rail-w,280px);z-index:20}
.pf-pm__panel{position:relative;width:var(--pf-pm-rail-w,280px);min-width:0;overflow:visible}
.pf-pm__rail{display:flex;flex-direction:column;gap:var(--pf-pm-item-gap,2px);width:100%;max-height:min(var(--pf-pm-max-h,640px),calc(100vh - 110px));padding:10px;overflow:auto;background:var(--pf-pm-rail-bg,#fff);border:var(--pf-pm-panel-bw,1px) var(--pf-pm-panel-bs,solid) var(--pf-pm-border,#e5e7eb);border-radius:var(--pf-pm-panel-radius,10px);box-shadow:var(--pf-pm-shadow,0 18px 48px rgba(15,23,42,.16));color:var(--pf-pm-root-text,#1f2937)}
.pf-pm__root{display:flex;align-items:center;min-width:0;background:var(--pf-pm-root-bg,transparent);border-radius:var(--pf-pm-root-radius,6px);transition:background-color .14s ease,color .14s ease}
.pf-pm__root:hover{background:var(--pf-pm-root-hover-bg,#eef4ff)}
.pf-pm__root.is-active{background:var(--pf-pm-root-active-bg,#0b5cff)}
.pf-pm__root-link{display:flex;align-items:center;gap:10px;min-width:0;flex:1;height:var(--pf-pm-item-h,42px);padding:0 8px;color:var(--pf-pm-root-text,#1f2937);font-size:var(--pf-pm-root-fs,14px);font-weight:var(--pf-pm-root-fw,500);text-transform:var(--pf-pm-root-transform,none)}
.pf-pm__root:hover .pf-pm__root-link,.pf-pm__root:hover .pf-pm__root-open{color:var(--pf-pm-root-hover-text,#0b5cff)}
.pf-pm__root.is-active .pf-pm__root-link,.pf-pm__root.is-active .pf-pm__root-open{color:var(--pf-pm-root-active-text,#fff)}
.pf-pm__root-link>span:not(.pf-pm__icon):not(.pf-pm__badge){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-pm__root-open{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;margin-right:3px;border:0;background:transparent;color:var(--pf-pm-root-text,#1f2937);cursor:pointer;font-size:var(--pf-pm-arrow-size,12px)}
.pf-pm__icon{display:grid;place-items:center;flex:0 0 calc(var(--pf-pm-icon-size,16px) + 6px);width:calc(var(--pf-pm-icon-size,16px) + 6px);height:calc(var(--pf-pm-icon-size,16px) + 6px);color:var(--pf-pm-item-icon,var(--pf-pm-accent,#0b5cff));font-size:var(--pf-pm-icon-size,16px)}
.pf-pm__icon img{width:var(--pf-pm-icon-size,16px);height:var(--pf-pm-icon-size,16px);object-fit:contain}
.pf-pm__svg,.pf-pm__svg svg{display:block;width:var(--pf-pm-icon-size,16px);height:var(--pf-pm-icon-size,16px);fill:currentColor;stroke:currentColor}
.pf-pm__badge{display:inline-flex;align-items:center;min-height:18px;padding:1px 6px;border-radius:999px;background:var(--pf-pm-badge,#ef4444);color:#fff;font-size:9px;font-weight:800;line-height:1.2;margin-left:auto}

/* Mega submenu: never part of normal document flow */
.pf-pm__content{position:absolute;top:0;left:calc(100% - var(--pf-pm-panel-bw,1px));width:max(320px,calc(var(--pf-pm-mega-w,1180px) - var(--pf-pm-rail-resolved,var(--pf-pm-rail-w,280px)) + var(--pf-pm-panel-bw,1px)));min-height:100%;max-height:min(var(--pf-pm-max-h,640px),calc(100vh - 110px));padding:24px 28px;overflow:auto;background:var(--pf-pm-content-bg,#fff);border:var(--pf-pm-panel-bw,1px) var(--pf-pm-panel-bs,solid) var(--pf-pm-border,#e5e7eb);border-radius:0 var(--pf-pm-panel-radius,10px) var(--pf-pm-panel-radius,10px) 0;box-shadow:var(--pf-pm-shadow,0 18px 48px rgba(15,23,42,.16));color:var(--pf-pm-link-text,#334155);visibility:hidden;opacity:0;transform:translateX(8px);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s;z-index:2}
.pf-pm.has-submenu-open .pf-pm__content{visibility:visible;opacity:1;transform:none;pointer-events:auto}
.pf-pm__root-panel{display:none}
.pf-pm__root-panel.is-active{display:block;animation:pfPmFade .12s ease}
@keyframes pfPmFade{from{opacity:.35;transform:translateX(4px)}to{opacity:1;transform:none}}
.pf-pm__panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--pf-pm-border,#e5e7eb)}
.pf-pm__panel-title strong{color:var(--pf-pm-group-text,#111827);font-size:calc(var(--pf-pm-group-fs,13px) + 3px);font-weight:var(--pf-pm-group-fw,700);text-transform:var(--pf-pm-group-transform,uppercase)}
.pf-pm__panel-title a{color:var(--pf-pm-accent,#0b5cff);font-size:12px;font-weight:700}
.pf-pm__mega-grid{display:grid;grid-template-columns:repeat(var(--pf-pm-cols,4),minmax(0,1fr));gap:24px 30px;align-items:start}
.pf-pm__group{min-width:0}
.pf-pm__group-title{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--pf-pm-group-text,#111827);font-size:var(--pf-pm-group-fs,13px);font-weight:var(--pf-pm-group-fw,700);text-transform:var(--pf-pm-group-transform,uppercase)}
.pf-pm__links{list-style:none;margin:0;padding:0}
.pf-pm__links li{margin:0;padding:0}
.pf-pm__links a,.pf-pm__leaf{display:flex;align-items:center;gap:8px;min-height:34px;padding:5px 7px;border-radius:7px;color:var(--pf-pm-link-text,#334155);font-size:var(--pf-pm-link-fs,13px);font-weight:var(--pf-pm-link-fw,500);text-transform:var(--pf-pm-link-transform,none);transition:background-color .12s ease,color .12s ease,transform .12s ease}
.pf-pm__links a:hover,.pf-pm__leaf:hover{background:var(--pf-pm-link-hover-bg,#f8fafc);color:var(--pf-pm-link-hover-text,#0b5cff);transform:translateX(2px)}
.pf-pm__links .is-deep{margin:2px 0 5px 18px;padding-left:8px;border-left:1px solid var(--pf-pm-border,#e5e7eb)}
.pf-pm__links .is-deep a{font-size:calc(var(--pf-pm-link-fs,13px) - 1px);color:var(--pf-pm-muted,#64748b)}
.pf-pm__direct-grid{display:grid;grid-template-columns:repeat(var(--pf-pm-cols,4),minmax(0,1fr));gap:4px 18px;margin-bottom:18px}
.pf-pm__promo{position:relative;display:flex;min-height:165px;overflow:hidden;border:1px solid var(--pf-pm-border,#e5e7eb);border-radius:12px;background:#071a36;isolation:isolate}
.pf-pm__promo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,12,29,.97) 0%,rgba(1,12,29,.78) 48%,rgba(1,12,29,.18) 100%);z-index:0;pointer-events:none}
.pf-pm__promo-art{position:absolute;inset:0 0 0 auto;width:62%;height:100%;object-fit:cover;z-index:-1;transition:transform .25s}
.pf-pm__promo:hover .pf-pm__promo-art{transform:scale(1.03)}
.pf-pm__promo-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;width:62%;padding:20px;color:#fff}
.pf-pm__promo-copy strong{font-size:20px;line-height:1.15;text-transform:uppercase}
.pf-pm__promo-copy small{color:#cbd5e1;font-size:12px;line-height:1.45}
.pf-pm__promo-copy b{margin-top:5px;padding:7px 10px;border-radius:7px;background:var(--pf-pm-accent,#0b5cff);font-size:11px}
.pf-pm__empty{display:flex;align-items:center;gap:10px;padding:20px;border:1px dashed var(--pf-pm-border,#e5e7eb);border-radius:10px;color:var(--pf-pm-muted,#64748b)}
.pf-pm__empty a{color:var(--pf-pm-accent,#0b5cff);font-weight:700}
.pf-pm__empty--menu{min-height:100px;margin:0;background:var(--pf-pm-rail-bg,#fff)}

/* Scope: allow mega overlay to escape PF containers without changing their width */
.pf-pm[data-panel-scope="row"],.pf-pm[data-panel-scope="viewport"]{overflow:visible!important}
.pf-col:has(.pf-pm[data-panel-scope="row"]),.pf-col:has(.pf-pm[data-panel-scope="viewport"]),.pf-grid:has(.pf-pm[data-panel-scope="row"]),.pf-inner-grid:has(.pf-pm[data-panel-scope="row"]){overflow:visible!important}
.b-col:has(.pf-pm--builder[data-panel-scope="row"]),.b-col:has(.pf-pm--builder[data-panel-scope="viewport"]),.b-grid:has(.pf-pm--builder[data-panel-scope="row"]),.b-grid:has(.pf-pm--builder[data-panel-scope="viewport"]){overflow:visible!important}

/* Builder: toolbar must always stay above the menu preview */
.pf-pm--builder{z-index:0!important}
.b-node[data-block="product-menu"]{overflow:visible!important;z-index:20}
.b-node[data-block="product-menu"]>.b-toolbar{z-index:5000!important;top:-30px!important}
.b-node[data-block="product-menu"]>.b-block-preview{overflow:visible!important}
.pf-pm__builder-note{display:none}
.pf-pm--builder .pf-pm__builder-note{display:block;margin-top:6px;padding:4px 7px;border-radius:6px;background:#eaf2ff;color:#456282;font-size:10px;white-space:nowrap}

/* Mobile */
.pf-pm__backdrop,.pf-pm__drawer{display:none}
@media(max-width:1100px) and (min-width:993px){.pf-pm__mega-grid,.pf-pm__direct-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-pm__content{padding:20px}}
@media(max-width:992px){
 .pf-pm,.pf-pm--mode-always{display:inline-flex;width:auto}
 .pf-pm__trigger,.pf-pm--mode-always .pf-pm__trigger{cursor:pointer;width:min(var(--pf-pm-trigger-w,280px),100%)}
 .pf-pm__panel-wrap,.pf-pm--mode-always .pf-pm__panel-wrap{display:none!important}
 .pf-pm__trigger-caret{display:none}
 .pf-pm__backdrop{position:fixed;inset:0;display:block;background:rgba(1,9,24,.62);backdrop-filter:blur(2px);z-index:99990}
 .pf-pm__backdrop[hidden]{display:none}
 .pf-pm__drawer{position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;width:min(92vw,var(--pf-pm-drawer-w,390px));background:var(--pf-pm-rail-bg,#fff);color:var(--pf-pm-root-text,#1f2937);z-index:99991;box-shadow:20px 0 60px rgba(0,0,0,.25);transform:translateX(-105%);visibility:hidden;transition:transform .22s ease,visibility .22s}
 .pf-pm.is-mobile-open .pf-pm__drawer{transform:none;visibility:visible}
 .pf-pm__drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid var(--pf-pm-border,#e5e7eb);font-size:17px}
 .pf-pm__drawer-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--pf-pm-border,#e5e7eb);border-radius:9px;background:transparent;color:inherit}
 .pf-pm__drawer-body{padding:10px 10px 24px;overflow:auto;overscroll-behavior:contain}
 .pf-pm__mobile-list{list-style:none;margin:0;padding:0}.pf-pm__mobile-list[data-depth="1"]{padding-left:12px}.pf-pm__mobile-list[data-depth="2"]{padding-left:14px;border-left:1px solid var(--pf-pm-border,#e5e7eb)}
 .pf-pm__mobile-row{display:flex;align-items:center;border-radius:9px}.pf-pm__mobile-row>a{display:flex;align-items:center;gap:10px;min-width:0;flex:1;padding:10px 8px;color:inherit;font-size:14px}.pf-pm__mobile-row:hover{background:var(--pf-pm-root-hover-bg,#eef4ff)}
 .pf-pm__mobile-toggle{display:grid;place-items:center;width:38px;height:38px;border:0;background:transparent;color:inherit;transition:.2s}.pf-pm__mobile-item.is-open>.pf-pm__mobile-row .pf-pm__mobile-toggle{transform:rotate(180deg)}
 .pf-pm__mobile-children{display:none}.pf-pm__mobile-item.is-open>.pf-pm__mobile-children{display:block}body.pf-pm-lock{overflow:hidden!important}
}
@media(max-width:480px){.pf-pm__trigger-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.pf-pm__drawer{width:92vw}}
