/**
 * Vote with Pride: the site header (plugin 1.8.1, includes/class-vwp-nav.php + public/js/vwp-nav.js).
 * Everything is scoped under #vwp-nav / #vwp-nav-sheet (ids outrank the theme's `body a`, `body button` rules
 * without !important). The only !important rules are the two that retire the theme header, because the theme's
 * own rules for it are !important: they apply only when this header printed (`#vwp-nav ~ ...`).
 */

@font-face { font-family: "Poppins"; font-style: normal; font-weight: 600; font-display: swap; src: url(../../assets/fonts/poppins-600-latin.woff2) format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 700; font-display: swap; src: url(../../assets/fonts/poppins-700-latin.woff2) format("woff2"); }

:root {
    --vn-h: 124px;            /* stripe 4 + info strip 36 + bar 84: the in-flow spacer under the fixed header */
    --vn-h-scrolled: 68px;    /* stripe 4 + bar 64 */
}

/* ---- retire the theme header (only when this one printed) ---- */
#vwp-nav ~ .wrapper-container > #header { display: none !important; }
#vwp-nav ~ .wrapper-container { padding-top: 0 !important; }
body:has(> #vwp-nav)::before { display: none; }   /* the theme's own fixed pride stripe (vwp-custom-header.css) */
html { scroll-padding-top: calc(var(--vn-h-scrolled) + 16px); }
html:has(> body.admin-bar) { scroll-padding-top: calc(var(--vn-h-scrolled) + 48px); }

.vwp-nav-spacer { height: var(--vn-h); }
/* Logged in: the theme's `html.csscolumns { margin-top: 0 !important }` cancels WordPress's admin-bar margin, so the
   spacer makes room for the bar as well (as the old header's offsets did: 150px + 32px). */
body.admin-bar .vwp-nav-spacer { height: calc(var(--vn-h) + 32px); }
@media (max-width: 782px) { body.admin-bar .vwp-nav-spacer { height: calc(var(--vn-h) + 46px); } }

/* ---- header ---- */
#vwp-nav {
    --ink: #0f172a; --line: rgba(255, 255, 255, .1); --txt: #e7eaf3; --muted: #a3abc2;
    --anti: #f87171; --pro: #34d399; --watch: #94a3b8;
    --grad: linear-gradient(135deg, #4f46e5, #7c3aed 50%, #c026d3);   /* white text passes 4.5:1 on every stop */
    --pride: linear-gradient(90deg, #e40303, #ff8c00, #ffed00, #008026, #24408e, #732982, #e40303);
    --ease: cubic-bezier(.2, .8, .2, 1);
    position: fixed; top: var(--vn-top, 0px); left: 0;   /* --vn-top: the admin bar's visible height, set by the script */
    right: 0; z-index: 99990;
    margin: 0; padding: 0; border: 0;
    background: linear-gradient(180deg, #141d33, #0f172a);
    color: var(--txt);
    font-family: "Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 14px; line-height: 1.4; text-align: left;
    transition: background .35s var(--ease), box-shadow .35s var(--ease);
    -webkit-font-smoothing: antialiased;
}
body.admin-bar #vwp-nav { top: var(--vn-top, 32px); }
#vwp-nav *, #vwp-nav *::before, #vwp-nav *::after, #vwp-nav-sheet *, #vwp-nav-sheet *::before, #vwp-nav-sheet *::after { box-sizing: border-box; }
#vwp-nav.is-scrolled {
    background: rgba(15, 23, 42, .84);
    -webkit-backdrop-filter: blur(16px) saturate(1.4); backdrop-filter: blur(16px) saturate(1.4);
    box-shadow: 0 10px 30px rgba(10, 15, 30, .35);
}
#vwp-nav a, #vwp-nav a:hover, #vwp-nav a:focus, #vwp-nav-sheet a, #vwp-nav-sheet a:hover, #vwp-nav-sheet a:focus { text-decoration: none; color: inherit; }
#vwp-nav :focus-visible, #vwp-nav-sheet :focus-visible { outline: 3px solid #ffb703; outline-offset: 2px; border-radius: 10px; }
#vwp-nav b { font-weight: 600; }
#vwp-nav p, #vwp-nav-sheet p { margin: 0; }
#vwp-nav ul, #vwp-nav li { list-style: none; margin: 0; padding: 0; }
#vwp-nav [hidden], #vwp-nav-sheet [hidden] { display: none; }
#vwp-nav .vn-sr, #vwp-nav-sheet .vn-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* pride stripe */
#vwp-nav .vn-stripe { height: 4px; background: var(--pride); background-size: 200% 100%; animation: vn-shimmer 8s linear infinite; }
@keyframes vn-shimmer { to { background-position: -200% 0; } }

/* info strip */
#vwp-nav .vn-info { height: 36px; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 18px; color: var(--muted); overflow: hidden; transition: height .35s var(--ease), opacity .25s; }
#vwp-nav.is-scrolled .vn-info { height: 0; opacity: 0; border-bottom-width: 0; }
#vwp-nav .vn-in { max-width: 1240px; margin: 0 auto; padding: 9px 24px 8px; display: flex; gap: 26px; align-items: center; white-space: nowrap; overflow-x: auto; scrollbar-width: none; }
#vwp-nav .vn-in::-webkit-scrollbar { display: none; }
#vwp-nav .vn-chip { display: inline-flex; align-items: center; gap: 6px; flex: none; color: var(--muted); }
#vwp-nav .vn-chip b { color: #fff; font-weight: 600; }
#vwp-nav .vn-chip a, #vwp-nav a.vn-chip--link:hover { color: #c7c9ff; text-decoration: underline; text-underline-offset: 3px; }
#vwp-nav a.vn-chip--link { text-decoration: none; }
#vwp-nav .vn-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--pro); box-shadow: 0 0 0 0 rgba(52, 211, 153, .6); animation: vn-pulse 2.4s infinite; flex: none; }
@keyframes vn-pulse { 70% { box-shadow: 0 0 0 8px rgba(52, 211, 153, 0); } 100% { box-shadow: 0 0 0 0 rgba(52, 211, 153, 0); } }
#vwp-nav .vn-count { font-variant-numeric: tabular-nums; }

/* bar */
#vwp-nav .vn-bar { position: relative; max-width: 1240px; margin: 0 auto; padding: 0 24px; height: 84px; display: flex; align-items: center; gap: 22px; transition: height .35s var(--ease); }
#vwp-nav.is-scrolled .vn-bar { height: 64px; }
#vwp-nav .vn-logo { display: block; flex: 0 1 auto; min-width: 0; line-height: 0; border-radius: 10px; }
#vwp-nav .vn-logo img { display: block; height: 58px; width: auto; max-width: 100%; transition: height .35s var(--ease); }
#vwp-nav.is-scrolled .vn-logo img { height: 44px; }

/* pill nav */
#vwp-nav .vn-main { flex: 1; display: flex; justify-content: center; min-width: 0; }
#vwp-nav .vn-items { display: flex; gap: 4px; padding: 6px; border-radius: 16px; background: rgba(255, 255, 255, .04); border: 1px solid var(--line); }
#vwp-nav .vn-glide { position: absolute; left: 0; top: 0; width: 0; height: 0; border-radius: 11px; background: rgba(255, 255, 255, .1); opacity: 0; pointer-events: none; transition: left .3s var(--ease), top .3s var(--ease), width .3s var(--ease), height .3s var(--ease), opacity .2s; }
#vwp-nav button.vn-top {
    -webkit-appearance: none; appearance: none; margin: 0; border: 0; box-shadow: none; background: none; min-height: 0; height: auto; width: auto;
    font: 600 15px/1 "Poppins", system-ui, sans-serif; letter-spacing: .2px; text-transform: none; color: #dfe3f1;
    padding: 12px 16px; border-radius: 11px; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; position: relative; z-index: 1; white-space: nowrap;
}
#vwp-nav button.vn-top::before, #vwp-nav button.vn-top::after, #vwp-nav button.vn-burger::before, #vwp-nav button.vn-burger::after { content: none; display: none; }
#vwp-nav button.vn-top:hover, #vwp-nav button.vn-top[aria-expanded="true"] { color: #fff; background: none; }
#vwp-nav .vn-item.is-current > button.vn-top { color: #fff; box-shadow: inset 0 -2px 0 #a5b4fc; }
#vwp-nav .vn-chev { width: 10px; height: 10px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; transition: transform .3s var(--ease); }
#vwp-nav button[aria-expanded="true"] .vn-chev { transform: rotate(180deg); }
#vwp-nav .vn-new, #vwp-nav-sheet .vn-new { font: 700 10px/1 "Poppins", system-ui, sans-serif; letter-spacing: .6px; text-transform: uppercase; padding: 4px 7px; border-radius: 999px; background: linear-gradient(135deg, #4f46e5, #7c3aed 50%, #c026d3); color: #fff; box-shadow: 0 0 0 0 rgba(168, 85, 247, .55); animation: vn-newpulse 2.6s infinite; }
@keyframes vn-newpulse { 70% { box-shadow: 0 0 0 7px rgba(168, 85, 247, 0); } 100% { box-shadow: 0 0 0 0 rgba(168, 85, 247, 0); } }

/* call to action */
#vwp-nav a.vn-cta, #vwp-nav-sheet a.vn-cta {
    flex: none; display: inline-block; font: 600 13px/1 "Poppins", system-ui, sans-serif; letter-spacing: .7px; text-transform: uppercase; color: #fff;
    padding: 14px 20px; border-radius: 12px; background: linear-gradient(135deg, #4f46e5, #7c3aed 50%, #c026d3); box-shadow: 0 6px 18px rgba(99, 102, 241, .4);
    transition: transform .25s var(--ease), box-shadow .25s; white-space: nowrap;
}
#vwp-nav a.vn-cta:hover, #vwp-nav-sheet a.vn-cta:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 10px 26px rgba(99, 102, 241, .55); }

/* panels: positioned against the bar, centred, after their button in the DOM */
#vwp-nav .vn-panel {
    position: absolute; left: 50%; top: calc(100% + 14px); width: min(940px, calc(100vw - 32px));
    transform: translate(-50%, 10px) scale(.98); opacity: 0; visibility: hidden; pointer-events: none;
    background: rgba(17, 24, 43, .97); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, .12); border-radius: 22px; box-shadow: 0 30px 70px rgba(5, 10, 25, .55); padding: 22px;
    display: grid; grid-template-columns: 1.35fr 1fr; gap: 18px; color: var(--txt); text-align: left; z-index: 2;
    transition: opacity .25s var(--ease), transform .3s var(--ease), visibility 0s .3s;
}
#vwp-nav .vn-panel.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0) scale(1); transition: opacity .25s var(--ease), transform .3s var(--ease); }
#vwp-nav .vn-panel::before { content: ""; position: absolute; left: 0; right: 0; top: -15px; height: 15px; }   /* hover bridge */
#vwp-nav .vn-panel--solo, #vwp-nav .vn-panel--issues { grid-template-columns: 1fr; }
#vwp-nav .vn-links { display: grid; gap: 6px; align-content: start; }
#vwp-nav .vn-lk, #vwp-nav-sheet .vn-lk { display: grid; grid-template-columns: 44px 1fr; gap: 14px; align-items: center; padding: 12px; border-radius: 14px; color: var(--txt, #e7eaf3); transition: background .2s, transform .25s var(--ease); }
#vwp-nav .vn-lk { opacity: 0; transform: translateY(8px); }
#vwp-nav .vn-panel.is-open .vn-lk { opacity: 1; transform: none; transition: background .2s, opacity .35s var(--ease), transform .35s var(--ease); }
#vwp-nav .vn-panel.is-open .vn-lk:nth-child(2) { transition-delay: .04s; }
#vwp-nav .vn-panel.is-open .vn-lk:nth-child(3) { transition-delay: .08s; }
#vwp-nav .vn-panel.is-open .vn-lk:nth-child(4) { transition-delay: .12s; }
#vwp-nav .vn-lk:hover, #vwp-nav-sheet .vn-lk:hover, #vwp-nav .vn-lk[aria-current="page"], #vwp-nav-sheet .vn-lk[aria-current="page"] { background: rgba(255, 255, 255, .06); color: var(--txt, #e7eaf3); }
#vwp-nav .vn-lk:hover .vn-ic { transform: scale(1.08) rotate(-4deg); }
#vwp-nav .vn-ic, #vwp-nav-sheet .vn-ic { width: 44px; height: 44px; margin: 0; padding: 0; border-radius: 12px; display: grid; place-items: center; background: rgba(99, 102, 241, .16); border: 1px solid rgba(165, 180, 252, .25); transition: transform .3s var(--ease); }
#vwp-nav .vn-ic svg, #vwp-nav-sheet .vn-ic svg { display: block; width: 22px; height: 22px; margin: 0; stroke: #c7c9ff; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#vwp-nav .vn-tx, #vwp-nav-sheet .vn-tx { display: block; min-width: 0; }
#vwp-nav .vn-tx b, #vwp-nav-sheet .vn-tx b { display: block; font: 600 15px/1.25 "Poppins", system-ui, sans-serif; color: #fff; }
#vwp-nav .vn-tx span, #vwp-nav-sheet .vn-tx span { display: block; font-size: 13px; color: #a3abc2; margin-top: 3px; line-height: 1.4; }

/* feature card */
#vwp-nav .vn-feat { border-radius: 18px; padding: 20px; background: radial-gradient(circle at 85% 0, rgba(168, 85, 247, .35), transparent 60%), linear-gradient(160deg, #1c2545, #141b33); border: 1px solid rgba(165, 180, 252, .2); display: flex; flex-direction: column; gap: 12px; }
#vwp-nav .vn-k { font: 600 11px/1.2 "Poppins", system-ui, sans-serif; letter-spacing: 1.4px; text-transform: uppercase; color: #a5b4fc; }
#vwp-nav .vn-h { font: 700 20px/1.25 "Poppins", system-ui, sans-serif; color: #fff; }
#vwp-nav .vn-h b { font-weight: 700; }
#vwp-nav .vn-p { font-size: 13.5px; color: #c9cee0; line-height: 1.55; }
#vwp-nav .vn-stats, #vwp-nav-sheet .vn-mstats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
#vwp-nav .vn-st, #vwp-nav-sheet .vn-st { background: rgba(255, 255, 255, .05); border: 1px solid var(--line, rgba(255, 255, 255, .1)); border-radius: 12px; padding: 10px; min-width: 0; }
#vwp-nav .vn-st b, #vwp-nav-sheet .vn-st b { display: block; font: 700 22px/1 "Poppins", system-ui, sans-serif; color: #fff; white-space: nowrap; }
#vwp-nav .vn-st span, #vwp-nav-sheet .vn-st > span { display: block; font-size: 11.5px; color: #a3abc2; margin-top: 4px; line-height: 1.3; }
#vwp-nav .vn-bar2 { height: 8px; border-radius: 99px; background: rgba(255, 255, 255, .08); overflow: hidden; display: flex; }
#vwp-nav .vn-bar2 i { display: block; height: 100%; }
#vwp-nav .vn-bar2 .vn-anti { background: var(--anti); }
#vwp-nav .vn-bar2 .vn-pro { background: var(--pro); }
#vwp-nav .vn-bar2 .vn-watch { background: var(--watch); }
#vwp-nav .vn-legend { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; color: var(--muted); margin-top: 6px; }
#vwp-nav .vn-anti-t { color: var(--anti); }
#vwp-nav .vn-pro-t { color: var(--pro); }
#vwp-nav .vn-watch-t { color: #cbd5e1; }
#vwp-nav a.vn-go { margin-top: auto; font: 600 14px/1.3 "Poppins", system-ui, sans-serif; color: #fff; display: inline-flex; gap: 8px; align-items: center; align-self: flex-start; }
#vwp-nav a.vn-go::after { content: "\2192"; transition: transform .25s var(--ease); }
#vwp-nav a.vn-go:hover { color: #fff; }
#vwp-nav a.vn-go:hover::after { transform: translateX(4px); }

/* issues */
#vwp-nav .vn-issues { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
#vwp-nav .vn-is, #vwp-nav-sheet .vn-is { display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 11px 12px; border-radius: 12px; font-size: 14px; line-height: 1.35; color: #e7eaf3; transition: background .2s; }
#vwp-nav .vn-is { opacity: 0; transform: translateY(6px); }
#vwp-nav .vn-panel.is-open .vn-is { opacity: 1; transform: none; transition: background .2s, opacity .35s var(--ease), transform .35s var(--ease); }
#vwp-nav .vn-is:hover, #vwp-nav-sheet .vn-is:hover { background: rgba(255, 255, 255, .06); color: #fff; }
#vwp-nav .vn-is em, #vwp-nav-sheet .vn-is em { flex: none; font: 600 12px/1.4 "Poppins", system-ui, sans-serif; font-style: normal; color: #c7c9ff; background: rgba(99, 102, 241, .18); border-radius: 999px; padding: 3px 9px; }
#vwp-nav .vn-note { font-size: 13px; color: var(--muted); padding: 4px 12px; }
#vwp-nav a.vn-all, #vwp-nav-sheet a.vn-all { color: #c7c9ff; text-decoration: underline; text-underline-offset: 3px; }

/* burger (phones) */
#vwp-nav button.vn-burger { display: none; }

/* ---- the CSS-only fallback until the script runs: open on hover / keyboard focus ---- */
#vwp-nav:not(.vn-js) .vn-item:hover > .vn-panel,
#vwp-nav:not(.vn-js) .vn-item:focus-within > .vn-panel { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0) scale(1); }
#vwp-nav:not(.vn-js) .vn-item:hover > .vn-panel .vn-lk, #vwp-nav:not(.vn-js) .vn-item:focus-within > .vn-panel .vn-lk,
#vwp-nav:not(.vn-js) .vn-item:hover > .vn-panel .vn-is, #vwp-nav:not(.vn-js) .vn-item:focus-within > .vn-panel .vn-is { opacity: 1; transform: none; }

/* ---- narrower desktops: the same bar, tighter ---- */
@media (max-width: 1239px) {
    #vwp-nav .vn-bar { gap: 14px; padding: 0 18px; }
    #vwp-nav .vn-logo img { height: 48px; }
    #vwp-nav button.vn-top { padding: 11px 11px; font-size: 14px; gap: 6px; }
    #vwp-nav .vn-items { gap: 2px; padding: 5px; }
    #vwp-nav a.vn-cta { padding: 13px 14px; font-size: 12px; letter-spacing: .5px; }
}

/* ---- phones and tablets: logo + menu button; the rest lives in the sheet ---- */
@media (max-width: 1023px) {
    :root { --vn-h: 106px; --vn-h-scrolled: 64px; }
    #vwp-nav .vn-info { height: 34px; font-size: 12.5px; }
    #vwp-nav .vn-in { padding: 8px 16px 7px; gap: 20px; }
    #vwp-nav .vn-bar { height: 68px; padding: 0 16px; gap: 12px; justify-content: space-between; }
    #vwp-nav.is-scrolled .vn-bar { height: 60px; }
    #vwp-nav .vn-logo img { height: 48px; }
    #vwp-nav.is-scrolled .vn-logo img { height: 42px; }
    #vwp-nav .vn-main, #vwp-nav .vn-bar > a.vn-cta { display: none; }
    #vwp-nav button.vn-burger {
        -webkit-appearance: none; appearance: none; margin: 0; padding: 0; min-height: 0; box-shadow: none; flex: none;
        display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: rgba(255, 255, 255, .08); border: 1px solid var(--line); cursor: pointer; color: #fff;
    }
    #vwp-nav button.vn-burger:hover { background: rgba(255, 255, 255, .14); }
    #vwp-nav .vn-burger i { display: block; width: 20px; height: 2px; background: #fff; border-radius: 2px; position: relative; transition: background .2s; }
    #vwp-nav .vn-burger i::before, #vwp-nav .vn-burger i::after { content: ""; position: absolute; left: 0; width: 20px; height: 2px; background: #fff; border-radius: 2px; transition: transform .3s var(--ease); }
    #vwp-nav .vn-burger i::before { top: -6px; }
    #vwp-nav .vn-burger i::after { top: 6px; }
    #vwp-nav .vn-burger[aria-expanded="true"] i { background: transparent; }
    #vwp-nav .vn-burger[aria-expanded="true"] i::before { transform: translateY(6px) rotate(45deg); }
    #vwp-nav .vn-burger[aria-expanded="true"] i::after { transform: translateY(-6px) rotate(-45deg); }
}
@media (max-width: 782px) { body.admin-bar #vwp-nav { top: var(--vn-top, 46px); } }
@media (max-width: 380px) {
    #vwp-nav .vn-logo img { height: 42px; }
    #vwp-nav.is-scrolled .vn-logo img { height: 38px; }
}

/* ---- the phone sheet (outside the header: a backdrop-filtered header would contain a fixed child) ---- */
#vwp-nav-sheet {
    --ease: cubic-bezier(.2, .8, .2, 1); --line: rgba(255, 255, 255, .1); --txt: #e7eaf3;
    --cx: calc(100% - 39px); --cy: 80px; --pad: 120px;
    position: fixed; inset: 0; z-index: 99989; margin: 0;
    background: linear-gradient(180deg, #121a30, #0b1122); color: #e7eaf3;
    font-family: "Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 15px; line-height: 1.4;
    padding: var(--pad) 20px 30px; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
    clip-path: circle(0 at var(--cx) var(--cy)); visibility: hidden;
    transition: clip-path .55s var(--ease), visibility 0s .55s;
}
#vwp-nav-sheet.is-open { clip-path: circle(150% at var(--cx) var(--cy)); visibility: visible; transition: clip-path .55s var(--ease); }
#vwp-nav-sheet .vn-sheet-in { max-width: 640px; margin: 0 auto; }
#vwp-nav-sheet .vn-mstats { grid-template-columns: 1fr 1fr; margin: 6px 0 18px; }
#vwp-nav-sheet .vn-st b { font-size: 24px; }
#vwp-nav-sheet .vn-st > span { font-size: 13px; }
#vwp-nav-sheet .vn-grp { border-bottom: 1px solid var(--line); opacity: 0; transform: translateY(14px); }
#vwp-nav-sheet.is-open .vn-grp { opacity: 1; transform: none; transition: opacity .4s var(--ease), transform .4s var(--ease); }
#vwp-nav-sheet.is-open .vn-grp:nth-child(2) { transition-delay: .12s; }
#vwp-nav-sheet.is-open .vn-grp:nth-child(3) { transition-delay: .17s; }
#vwp-nav-sheet.is-open .vn-grp:nth-child(4) { transition-delay: .22s; }
#vwp-nav-sheet.is-open .vn-grp:nth-child(5) { transition-delay: .27s; }
#vwp-nav-sheet.is-open .vn-grp:nth-child(6) { transition-delay: .32s; }
#vwp-nav-sheet summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; font: 600 22px/1.2 "Poppins", system-ui, sans-serif; color: #fff; padding: 18px 4px; cursor: pointer; border-radius: 10px; }
#vwp-nav-sheet summary::-webkit-details-marker { display: none; }
#vwp-nav-sheet summary::marker { content: ""; }
#vwp-nav-sheet .vn-sum { display: inline-flex; align-items: center; gap: 12px; }
#vwp-nav-sheet .vn-chev { width: 14px; height: 14px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; transition: transform .3s var(--ease); }
#vwp-nav-sheet details[open] > summary .vn-chev { transform: rotate(180deg); }
#vwp-nav-sheet .vn-sub { display: grid; gap: 4px; padding: 0 0 14px; }
#vwp-nav-sheet .vn-lk { color: #e7eaf3; }
#vwp-nav-sheet .vn-grp--cta { border-bottom: 0; }
#vwp-nav-sheet a.vn-mcta { display: block; text-align: center; margin-top: 22px; padding: 16px 20px; font-size: 14px; }
#vwp-nav-sheet a.vn-all { display: block; padding: 11px 12px; font-size: 14px; }
@media (min-width: 1024px) { #vwp-nav-sheet { display: none; } }
html.vn-locked { overflow: hidden; }

/* ---- reduced motion: no shimmer, pulse, count-up, glide, reveal or lifts ---- */
@media (prefers-reduced-motion: reduce) {
    #vwp-nav, #vwp-nav *, #vwp-nav *::before, #vwp-nav *::after,
    #vwp-nav-sheet, #vwp-nav-sheet *, #vwp-nav-sheet *::before, #vwp-nav-sheet *::after { animation: none !important; transition: none !important; }
    #vwp-nav a.vn-cta:hover, #vwp-nav .vn-lk:hover .vn-ic { transform: none; }
    html { scroll-behavior: auto; }
}
