/* All layout overrides are limited to the configured Products branch. */
.gq-menu-toggle, .gq-card-image {display:none}
.gq-mega-parent.gq-enhanced {position:relative !important}
.gq-mega-parent.gq-enhanced > .ast-menu-toggle,
.gq-mega-parent.gq-enhanced > a .ast-icon.icon-arrow,
.gq-mega-parent.gq-enhanced > a > .dropdown-menu-toggle {display:none !important}
.gq-mega-parent.gq-enhanced > a {padding-right:38px !important}
.gq-mega-parent.gq-enhanced > .gq-menu-toggle {
    display:flex !important;align-items:center;justify-content:center;
    position:absolute;top:50%;right:0;transform:translateY(-50%);
    width:34px;height:40px;padding:0;margin:0;border:0;border-radius:4px;
    background:transparent;color:inherit;box-shadow:none;cursor:pointer;line-height:1;
}
.gq-mega-parent.gq-enhanced > .gq-menu-toggle:hover {color:#0067c9;background:#edf5fc}
.gq-mega-parent.gq-enhanced > .gq-menu-toggle:focus-visible,
.gq-mega-parent.gq-enhanced a:focus-visible {outline:2px solid #0067c9;outline-offset:3px}
.gq-mega-parent.gq-enhanced.gq-open > .gq-menu-toggle svg {transform:rotate(180deg)}
.gq-mega-parent.gq-enhanced > ul.sub-menu {
    display:none !important;visibility:hidden !important;opacity:0 !important;
    pointer-events:none !important;transform:none !important;
    list-style:none !important;box-sizing:border-box !important;
    margin:0 !important;border:1px solid #e1e7ee !important;border-top:3px solid #0067c9 !important;
    border-radius:0 0 8px 8px !important;background:#fff !important;z-index:100000 !important;
    color:#1e293b !important;
}
.gq-mega-parent.gq-enhanced.gq-open > ul.sub-menu {
    display:grid !important;visibility:visible !important;opacity:1 !important;pointer-events:auto !important;
}
.gq-mega-parent.gq-enhanced:not(.gq-mobile) > ul.sub-menu {
    position:fixed !important;inset:auto !important;left:var(--gq-left,20px) !important;
    top:var(--gq-top,90px) !important;width:var(--gq-width,1080px) !important;
    max-width:calc(100vw - 32px) !important;max-height:var(--gq-max-height,75vh) !important;
    overflow:auto !important;padding:22px !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:18px !important;box-shadow:0 12px 28px rgba(22,50,79,.12) !important;
}
.gq-mega-parent.gq-enhanced > ul.sub-menu > li {
    display:block !important;float:none !important;width:auto !important;min-width:0 !important;
    margin:0 !important;padding:0 !important;border:0 !important;background:none !important;
}
.gq-mega-parent.gq-enhanced > ul.sub-menu > li > a {
    display:flex !important;flex-direction:column;align-items:stretch !important;
    width:100%;height:100%;box-sizing:border-box;white-space:normal !important;
    padding:10px !important;margin:0 !important;border:1px solid transparent !important;
    border-radius:5px !important;background:#fff !important;color:#1e293b !important;
    text-decoration:none !important;line-height:1.4 !important;font-size:15px !important;font-weight:600 !important;
}
.gq-mega-parent.gq-enhanced > ul.sub-menu > li > a:hover,
.gq-mega-parent.gq-enhanced > ul.sub-menu > li.current-menu-item > a {
    color:#0067c9 !important;background:#f5f9fd !important;border-color:#d9e7f5 !important;
}
.gq-mega-parent.gq-enhanced .gq-card-image {
    display:flex;align-items:center;justify-content:center;width:100%;height:auto;aspect-ratio:4 / 3;
    background:transparent;border-radius:3px;overflow:hidden;margin:0 0 12px;
}
.gq-mega-parent.gq-enhanced .gq-card-image img {
    display:block;max-width:100%;width:100%;max-height:100%;height:100%;
    object-fit:contain;object-position:center;border:0;border-radius:0;box-shadow:none;
}
.gq-mega-parent.gq-enhanced .gq-card-label {display:block;line-height:1.4;white-space:normal}
/* Astra places its title inside .menu-text. Maintain that wrapper while applying card layout. */
.gq-mega-parent.gq-enhanced .gq-mega-card > a > .menu-text {display:block;width:100%}
.gq-mega-parent.gq-enhanced.gq-mobile > .gq-menu-toggle {
    top:0;transform:none;height:48px;width:48px;right:4px;
}
.gq-mega-parent.gq-enhanced.gq-mobile > a {min-height:48px;padding-right:56px !important}
.gq-mega-parent.gq-enhanced.gq-mobile > ul.sub-menu {
    position:static !important;left:auto !important;right:auto !important;top:auto !important;
    width:100% !important;max-width:100% !important;max-height:none !important;
    padding:8px !important;grid-template-columns:minmax(0,1fr) !important;gap:3px !important;
    box-shadow:none !important;border:0 !important;background:#f6f8fb !important;
}
.gq-mega-parent.gq-enhanced.gq-mobile > ul.sub-menu > li > a,
.gq-mega-parent.gq-enhanced.gq-mobile .gq-mega-card > a > .menu-text {
    flex-direction:row;display:flex !important;align-items:center !important;gap:12px;
}
.gq-mega-parent.gq-enhanced.gq-mobile .gq-card-image {
    width:66px;height:48px;flex:0 0 66px;margin:0;
}
.gq-mega-parent.gq-enhanced.gq-mobile .gq-card-label {flex:1;min-width:0;font-size:14px}
@media (prefers-reduced-motion:reduce) {
    .gq-mega-parent.gq-enhanced * {transition:none !important;animation:none !important}
}

/* Desktop curtain: reveal the panel without stretching product photography. */
.gq-mega-parent.gq-enhanced:not(.gq-mobile) > ul.sub-menu {
    display:grid !important;
    clip-path:inset(0 0 100% 0);
    transition:clip-path 380ms cubic-bezier(.22,.61,.36,1), opacity 220ms ease, visibility 0s linear 380ms !important;
    padding:18px !important;gap:14px !important;
}
.gq-mega-parent.gq-enhanced:not(.gq-mobile).gq-open > ul.sub-menu {
    clip-path:inset(0 0 0 0);
    transition:clip-path 420ms cubic-bezier(.22,.61,.36,1), opacity 180ms ease, visibility 0s !important;
}
.gq-mega-parent.gq-enhanced:not(.gq-mobile) .gq-card-label {text-align:center;min-height:2.8em;}
.gq-mega-parent.gq-enhanced:not(.gq-mobile) > ul.sub-menu > li > a {padding:6px !important;}
.gq-menu-backdrop {
    position:fixed;inset:0;z-index:99990;background:rgba(20,35,50,.12);
    -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity 300ms ease,visibility 0s linear 380ms;
}
.gq-menu-backdrop.gq-visible {opacity:1;visibility:visible;pointer-events:auto;transition:opacity 300ms ease;}
.gq-header-layer {z-index:99991 !important;}
.gq-header-static {position:relative;}
@media (prefers-reduced-motion:reduce) {
    .gq-mega-parent.gq-enhanced:not(.gq-mobile) > ul.sub-menu,
    .gq-menu-backdrop {transition:none !important;}
}
