/* Products menu only. Official Lucide outlines; no animation runtime required. */
.cm-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.cm-menu{top:84px;left:3.2%;right:3.2%;max-width:1740px;margin:auto;max-height:calc(100dvh - 100px);border:1px solid var(--border-default);border-radius:20px;background:var(--bg-primary);box-shadow:0 22px 64px color-mix(in srgb,var(--brand-navy) 20%,transparent);transform:translateY(-10px);transition:opacity .28s ease,transform .28s cubic-bezier(.2,.75,.25,1),visibility .28s;overscroll-behavior:contain;color:var(--cm-ink)}
.cm-menu .cl-mega-layout{display:grid;grid-template-columns:minmax(235px,1fr) minmax(0,2.8fr) minmax(260px,1.08fr);gap:24px;min-height:0;padding:28px;box-sizing:border-box}
.cm-menu .cl-mega-label{margin:9px 0 22px;color:var(--text-body);font-size:var(--type-eyebrow);font-weight:700;letter-spacing:.16em;line-height:1.5}
.cm-menu .cl-mega-categories{padding-right:20px;border-right:1px solid var(--cm-line)}
.cm-menu .cl-mega-category{display:grid;grid-template-columns:28px 1fr 18px;gap:15px;min-height:57px;margin:4px 0;padding:10px 13px;border-left:3px solid transparent;border-radius:4px;box-sizing:border-box;color:var(--cm-ink);font-size:var(--type-body);line-height:1.35;transition:background .24s,color .24s}
.cm-menu .cl-mega-category b{opacity:1;transform:none;color:var(--text-body);font-size:var(--type-card);font-weight:400;transition:transform .24s,color .24s}
.cm-menu .cl-mega-category:hover,.cm-menu .cl-mega-category:focus-visible{background:var(--bg-secondary)}
.cm-menu .cl-mega-category.is-active{border-left-color:var(--cm-gold);background:linear-gradient(110deg,var(--bg-gold),var(--bg-gold));font-weight:700}
.cm-menu .cl-mega-category.is-active .cm-icon{color:var(--brand-gold-ink)}
.cm-menu .cm-icon{display:block;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;transform-origin:center;overflow:visible;color:var(--text-body)}
.cm-menu .cl-mega-all{display:flex!important;gap:16px!important;margin-top:23px!important;padding:20px 10px 9px!important;border-top:1px solid var(--cm-line);font-size:var(--type-description)!important;color:var(--cm-ink)!important;line-height:1.4}
.cm-menu .cl-mega-all span{display:inline-block;transition:transform .24s;font-size:var(--type-card)}
.cm-menu .cl-mega-showcase{min-width:0;padding:0}
.cm-menu .cl-mega-panel{position:relative}
.cm-menu .cl-mega-panel-head{display:flex;gap:12px;margin:0 0 12px;min-height:24px}
.cm-menu .cl-mega-panel-head strong{font-size:var(--type-body);color:var(--cm-ink)}
.cm-menu .cl-mega-panel-head a{font-size:var(--type-eyebrow);color:var(--cm-muted)}
.cm-menu [data-product-panel=featured] .cl-mega-panel-head{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);min-height:0;margin:0}
.cm-menu .cm-product-stack{display:grid;gap:16px}
.cm-menu .cl-mega-product{margin:0;min-width:0;text-decoration:none;box-sizing:border-box;border:1px solid var(--cm-line);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.cm-menu .cm-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:53% 47%;min-height:315px;padding:30px;border:0;border-radius:12px;overflow:hidden;background:radial-gradient(ellipse at 90% 20%,var(--border-strong) 0%,var(--text-body) 29%,var(--brand-navy-light) 58%,var(--brand-navy) 100%);box-shadow:0 8px 22px color-mix(in srgb,var(--brand-navy-light) 5.1%,transparent);gap:0;color:var(--bg-primary)}
.cm-menu .cm-hero:after{content:"";position:absolute;z-index:-1;inset:65% -20% -20% 35%;border-top:1px solid color-mix(in srgb,var(--bg-primary) 21.96%,transparent);border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--border-default) 15.69%,transparent),transparent);transform:rotate(-14deg);pointer-events:none}
.cm-menu .cm-hero .cl-mega-product-media{grid-column:2;grid-row:1;width:100%;height:100%;min-height:250px;padding:0;border-radius:0;background:transparent;overflow:visible}
.cm-menu .cl-mega-product img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.cm-menu .cm-hero img{max-height:285px;filter:drop-shadow(0 14px 14px color-mix(in srgb,var(--brand-navy) 33.33%,transparent))}
.cm-menu .cm-product-copy{display:flex;flex-direction:column;min-width:0}
.cm-menu .cm-hero .cm-product-copy{grid-column:1;grid-row:1;justify-content:center;align-items:flex-start;padding-right:12px}
.cm-menu .cm-eyebrow{margin-bottom:15px;color:var(--brand-gold-ink);letter-spacing:.16em;font-size:var(--type-eyebrow);font-weight:700;line-height:1.5}
.cm-menu .cm-hero b{font-family:var(--font-heading);font-weight:400;font-size:var(--type-section);line-height:1.08;margin:0 0 15px;text-wrap:balance;color:var(--bg-primary)}
.cm-menu .cm-hero small{display:block;overflow:visible;color:var(--text-on-dark-soft);font-size:var(--type-body);font-weight:400;line-height:1.5;-webkit-line-clamp:unset}
.cm-menu .cm-product-cta{display:inline-flex;align-items:center;gap:15px;margin-top:auto;padding-top:14px;font-size:var(--type-description);font-weight:700;line-height:1.4;color:var(--cm-ink)}
.cm-menu .cm-product-cta>span{display:inline-block;color:var(--brand-gold-ink);font-size:var(--type-card);transition:transform .24s}
.cm-menu .cm-hero .cm-product-cta{margin-top:20px;padding:12px 20px;border-radius:5px;background:linear-gradient(110deg,var(--brand-gold),var(--brand-gold-light));color:var(--brand-navy);box-shadow:0 4px 10px color-mix(in srgb,var(--brand-navy) 14.12%,transparent);transition:transform .24s,box-shadow .24s,filter .24s}
.cm-menu .cm-hero .cm-product-cta>span{color:inherit}
.cm-menu .cm-product-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--brand-gold) var(--bg-soft);padding:5px 0 9px;margin:-5px 0 0;overscroll-behavior-x:contain}
.cm-menu .cm-product-rail:empty{display:none}
.cm-menu .cm-card{display:flex;flex-direction:column;gap:0;min-height:267px;padding:0;border-radius:12px;background:var(--bg-primary);scroll-snap-align:start;overflow:hidden}
.cm-menu .cm-card .cl-mega-product-media{display:grid;place-items:center;width:100%;height:125px;padding:8px 14px;box-sizing:border-box;border-radius:0;background:linear-gradient(145deg,var(--bg-secondary),var(--bg-secondary))}
.cm-menu .cm-card .cl-mega-product-media img{height:109px;max-height:109px;min-height:0;width:100%;object-fit:contain}
.cm-menu .cm-card .cm-product-copy{flex:1;padding:13px 16px}
.cm-menu .cm-card b{font-size:var(--type-body);line-height:1.23;margin:0 0 9px;color:var(--cm-ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cm-menu .cm-card small{color:var(--cm-muted);font-size:var(--type-description);font-weight:400;line-height:1.45;-webkit-line-clamp:3;min-height:0}
.cm-menu .cm-card:hover,.cm-menu .cm-card:focus-visible{transform:translateY(-4px);border-color:var(--brand-gold-light);background:var(--bg-primary);box-shadow:0 9px 20px color-mix(in srgb,var(--brand-navy-light) 7.06%,transparent)}
.cm-menu .cm-hero:hover,.cm-menu .cm-hero:focus-visible{transform:none;background:radial-gradient(ellipse at 90% 20%,var(--border-strong) 0%,var(--text-body) 29%,var(--brand-navy-light) 58%,var(--brand-navy) 100%)}
.cm-menu .cm-hero:hover .cm-product-cta,.cm-menu .cm-hero:focus-visible .cm-product-cta{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 8px 16px color-mix(in srgb,var(--brand-navy) 26.67%,transparent)}
.cm-menu .cm-hero:active .cm-product-cta,.cm-menu .cm-help a:active{transform:translateY(1px)}
.cm-menu a:hover .cm-product-cta>span,.cm-menu .cl-mega-category:hover b,.cm-menu .cm-solution:hover b,.cm-menu .cl-mega-all:hover span,.cm-menu .cm-help a:hover span{transform:translateX(4px)}
.cm-menu .cl-mega-solutions{display:flex;flex-direction:column;min-width:0;padding-left:24px;border-left:1px solid var(--cm-line)}
.cm-menu .cl-mega-solutions>a.cm-solution{grid-template-columns:43px 1fr 17px;gap:12px;min-height:76px;padding:10px 0;border-bottom:1px solid var(--cm-line);color:var(--cm-ink);font-size:var(--type-description);line-height:1.35;transition:background .24s}
.cm-menu .cl-mega-solutions>a.cm-solution:hover{padding-left:0;background:var(--bg-secondary)}
.cm-menu .cm-solution>b{font-size:var(--type-card);transition:transform .24s}
.cm-menu .cl-solution-icon{width:42px;height:42px;color:var(--text-body);border:1px solid var(--border-default);border-radius:50%;background:var(--bg-primary)}
.cm-menu .cl-solution-icon .cm-icon{width:24px;height:24px;stroke-width:1.5;color:inherit}
.cm-menu .cl-mega-solutions .cl-mega-all{border-top:0;margin-top:10px!important;padding:12px 0!important}
.cm-menu .cm-help{display:grid;grid-template-columns:37px minmax(0,1fr);gap:12px;margin-top:auto;padding:21px 18px 17px;border-radius:12px;background:linear-gradient(130deg,var(--bg-soft),var(--bg-secondary));box-shadow:0 4px 12px color-mix(in srgb,var(--brand-navy-light) 1.57%,transparent)}
.cm-menu .cm-help>.cm-icon{width:35px;height:35px}
.cm-menu .cm-help b{color:var(--cm-ink);font-size:var(--type-description);line-height:1.4}
.cm-menu .cm-help p{margin:3px 0 0;color:var(--cm-muted);font-size:var(--type-eyebrow);line-height:1.4}
.cm-menu .cm-help a{display:flex;grid-column:1/-1;align-items:center;justify-content:center;gap:14px;min-height:42px;padding:8px;border:1px solid var(--cm-gold);border-radius:5px;background:var(--bg-primary);color:var(--brand-gold-ink);text-decoration:none;font-size:var(--type-eyebrow);font-weight:700;line-height:1.4;transition:transform .24s,box-shadow .24s,background .24s}
.cm-menu .cm-help a:hover{transform:translateY(-2px);background:var(--bg-gold);box-shadow:0 6px 12px color-mix(in srgb,var(--brand-navy-light) 7.06%,transparent)}
.cm-menu .cm-help a span{font-size:var(--type-card);color:var(--brand-gold-ink);transition:transform .24s}
.cm-menu .cm-rail-controls{display:flex;justify-content:flex-end;gap:6px;margin-top:5px}
.cm-menu .cm-rail-controls[hidden]{display:none}
.cm-menu .cm-rail-controls button{display:grid;place-items:center;width:28px;height:26px;border:1px solid var(--cm-line);border-radius:5px;background:var(--bg-secondary);color:var(--cm-ink);font:inherit;cursor:pointer;transition:background .2s}
.cm-menu .cm-rail-controls button:hover{background:var(--bg-gold)}
.cm-menu .cm-rail-controls button:disabled{opacity:.4;cursor:default}
.cm-menu .cl-mega-products-empty{min-height:560px;border-radius:12px;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-gold))}
.cm-menu a:focus-visible,.cm-menu button:focus-visible,.cm-menu .cm-product-rail:focus-visible{outline:2px solid var(--brand-gold-ink);outline-offset:3px}
.cm-menu .cl-mega-category:hover .cm-icon,.cm-menu .cm-solution:hover .cm-icon,.cm-menu .cm-help:hover>.cm-icon{animation:cm-icon-once .5s ease both}
@keyframes cm-icon-once{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-2px) rotate(-7deg)}70%{transform:translateY(0) rotate(4deg)}}
.cl-mega-scrim{transition:opacity .28s,visibility .28s;background:color-mix(in srgb,var(--brand-navy) 33.33%,transparent)}
@media(min-width:1800px){.cm-menu .cl-mega-layout{grid-template-columns:290px minmax(0,1fr) 320px}.cm-menu .cm-hero{min-height:345px}.cm-menu .cm-hero img{max-height:315px}.cm-menu .cm-card .cl-mega-product-media{height:145px}.cm-menu .cm-card .cl-mega-product-media img{height:129px;max-height:129px}}
@media(min-width:1281px) and (max-width:1500px){.cm-menu{left:2%;right:2%}.cm-menu .cl-mega-layout{grid-template-columns:225px minmax(0,1fr) 250px;gap:18px;padding:22px}.cm-menu .cl-mega-categories{padding-right:12px}.cm-menu .cl-mega-solutions{padding-left:18px}.cm-menu .cl-mega-category{font-size:var(--type-description);gap:11px;padding-left:10px;padding-right:8px}.cm-menu .cm-hero{padding:24px;min-height:300px}.cm-menu .cm-hero b{font-size:var(--type-h3)}.cm-menu .cm-hero small{font-size:var(--type-description)}.cm-menu .cm-hero .cm-product-cta{font-size:var(--type-eyebrow);padding:11px 15px}.cm-menu .cm-card .cm-product-copy{padding:12px}.cm-menu .cm-card b{font-size:var(--type-description)}.cm-menu .cm-card small{font-size:var(--type-eyebrow)}.cm-menu .cm-help{padding:18px 12px}.cm-menu .cm-help a{font-size:var(--type-eyebrow)}.cm-menu .cm-product-rail{gap:12px;grid-auto-columns:calc((100% - 24px)/3)}}
/* Existing compact navigation remains an accordion on tablets and phones. */
@media(max-width:1280px){.cl-mobile-products .cl-mobile-accordion-body{margin-left:0;padding-left:10px;border-left-color:var(--bg-soft)}.cl-mobile-products .cl-mobile-category>summary{min-height:44px;padding:12px;color:var(--brand-navy-light);list-style:none}.cl-mobile-products .cl-mobile-category[open]>summary{border-left:3px solid var(--brand-gold);border-radius:5px;background:var(--bg-gold)}.cl-mobile-products .cl-mobile-product-list a{display:flex;align-items:center;min-height:44px;background:var(--bg-secondary);color:var(--text-body)}.cl-mobile-products .cl-mobile-view-all{min-height:44px;padding:12px;border-radius:7px}.cl-mobile-solutions a{display:flex;align-items:center;min-height:44px}.cl-mobile-products .cm-mobile-featured{display:grid;grid-template-columns:85px minmax(0,1fr);gap:10px;padding:10px!important;border:1px solid var(--bg-soft);border-radius:10px;background:var(--bg-secondary)!important}.cm-mobile-featured img{width:85px;height:95px;object-fit:contain}.cm-mobile-featured b{font-size:var(--type-description);line-height:1.35}.cm-mobile-featured small{display:block;margin-top:7px;font-size:var(--type-eyebrow);color:var(--text-body)}.cl-mobile-products .cl-mobile-product-list:has(.cm-mobile-featured){grid-template-columns:1fr}.cl-mobile-products .cm-mobile-featured:first-child{background:linear-gradient(110deg,var(--brand-navy),var(--text-body))!important;color:var(--bg-primary)}.cl-mobile-products .cm-mobile-featured:first-child small{color:var(--brand-gold-ink)}}
@media(prefers-reduced-motion:reduce){.cm-menu,.cm-menu *,.cl-mega-scrim,.cl-mobile-panel,.cl-mobile-products *,.cl-mobile-solutions *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.cm-menu a:hover,.cm-menu a:focus-visible,.cm-menu a:hover span,.cm-menu .cm-hero:hover .cm-product-cta{transform:none!important}}
