/* Shared desktop navigation disclosures. */
header li.nav-dropdown{position:relative;display:flex;align-items:center;gap:4px;min-width:0}
header .nav-dropdown-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;height:32px;margin-top:8px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--ink);cursor:pointer}
header .nav-dropdown-toggle svg{width:10px;height:6px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}
header .nav-dropdown-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
header .nav-dropdown-toggle:hover,header li.nav-dropdown.is-open>.nav-dropdown-toggle{color:var(--ink)}
header .nav-dropdown-toggle:focus-visible,header .nav-dropdown-panel a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
header .nav-dropdown-panel{position:absolute;top:calc(100% + 4px);left:-18px;z-index:100;width:310px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);overflow:auto;padding:10px;background:#fff;border:1px solid var(--gold-line);border-radius:6px;box-shadow:0 12px 32px rgba(40,30,15,.12);font-family:var(--font-sans);text-align:left}
header .nav-dropdown-panel[hidden]{display:none!important}
header .nav-dropdown-panel a{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:13px 14px;border-radius:3px;font-family:var(--font-sans);font-size:14px;font-weight:500;line-height:1.6;letter-spacing:.02em;color:var(--text);white-space:normal;text-decoration:none;transform:none}
header .nav-dropdown-panel a::after{content:none}
header .nav-dropdown-panel a:hover,header .nav-dropdown-panel a:focus-visible,header .nav-dropdown-panel a[aria-current="page"]{color:var(--text);background:transparent}
header .nav-dropdown-panel .nav-dropdown-overview{color:var(--text);font-size:13px;margin-bottom:8px;padding-bottom:16px;border-bottom:1px solid var(--line);border-radius:0}
@media(max-width:1180px){header nav>ul>li.nav-dropdown{display:none}}
@media(prefers-reduced-motion:reduce){header .nav-dropdown-toggle svg{transition:none}}
/* Digital signage categories: a second-level flyout, bounded to the viewport. */
header .nav-submenu-row{display:flex;align-items:stretch;border-radius:3px}
header .nav-submenu-row>a{flex:1;min-width:0;width:auto;padding-right:4px}
header .nav-submenu-row>a::after{display:none}
header .nav-submenu-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 36px;padding:0;border:0;border-radius:3px;background:transparent;color:var(--text);cursor:pointer}
header .nav-submenu-toggle svg{width:6px;height:10px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
header .nav-submenu-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
header .nav-submenu-row:hover,header .nav-submenu.is-open>.nav-submenu-row{background:transparent}
header .nav-submenu.is-open>.nav-submenu-row>a,header .nav-submenu.is-section-active>.nav-submenu-row>a{color:var(--text)}
header .nav-submenu-panel{position:fixed;z-index:101;width:326px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:10px;background:#fff;border:1px solid var(--gold-line);border-radius:6px;box-shadow:0 12px 32px rgba(40,30,15,.12)}
header .nav-submenu-panel[hidden]{display:none!important}
header .nav-submenu-panel a{padding:13px 14px;font-size:14px;line-height:1.6}

header .nav-dropdown-label{display:block;padding:8px 14px 4px;font-size:11px;line-height:1.6;font-weight:500;letter-spacing:.04em;color:#756b5f}
header .nav-dropdown-label-separated{margin-top:8px;padding-top:14px;border-top:1px solid var(--line)}

/* Blog navigation temporarily hidden, including mobile navigation. */
header .nav-blog{display:none!important}

/* Seven visible navigation items; keep equal outer tracks and contact at right. */
@media(min-width:1181px){header{grid-template-columns:minmax(0,1fr) repeat(7,max-content) minmax(0,1fr)}header nav ul .li-btn{grid-column:-2;justify-self:end}}


/* VioraSignage is temporarily a direct link; keep its submenu for later use. */
header .nav-viora-direct>.nav-dropdown-toggle,header .nav-viora-direct>.nav-dropdown-panel{display:none!important}

/* Navigation labels keep their color; the current page has a compact marker. */
header nav a.nav,
header nav a.nav:is(:hover,:focus-visible,.active,[aria-current="page"]),
header li.nav-dropdown:is(.is-open,.is-section-active)>a.nav{color:var(--ink);text-decoration:none}
header nav a.nav::after{content:"";position:absolute;left:min(4px,8%);right:auto;top:calc(50% + .8em + 3px);width:calc(100% - min(8px,16%));height:2px;border-radius:999px;background:currentColor;pointer-events:none;transform:scaleX(0);transform-origin:right center;transition:transform .3s cubic-bezier(.22,.61,.36,1),left .3s cubic-bezier(.22,.61,.36,1),width .3s cubic-bezier(.22,.61,.36,1)}
header nav a.nav:is(.active,[aria-current="page"])::after,
header li.nav-dropdown.is-section-active>a.nav::after{left:calc(50% - 10px);width:20px;transform:scaleX(1);transform-origin:center}
header nav a.nav:is(:focus-visible,.is-pointer-held)::after,
header li.nav-dropdown>a.nav.is-pointer-held::after,
header li.nav-dropdown:is(.is-open,:has(>.nav-dropdown-toggle:focus-visible))>a.nav::after{left:min(4px,8%);width:calc(100% - min(8px,16%));transform:scaleX(1);transform-origin:left center}
@media(hover:hover) and (pointer:fine){header nav a.nav:hover::after,header li.nav-dropdown:hover>a.nav::after{left:min(4px,8%);width:calc(100% - min(8px,16%));transform:scaleX(1);transform-origin:left center}}
header nav a.nav.is-pointer-held::after{transition:none}
@media(prefers-reduced-motion:reduce){header nav a.nav::after{transition:none}}

/* Dropdown links use the same underline motion, sized to their text. */
header .nav-dropdown-panel .nav-link-label{position:relative;display:inline-block;min-width:0;max-width:100%}
header .nav-dropdown-panel .nav-link-label::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1.5px;background:currentColor;pointer-events:none;transform:scaleX(0);transform-origin:right center;transition:transform .3s cubic-bezier(.22,.61,.36,1)}
header .nav-dropdown-panel a:is(:focus-visible,[aria-current="page"])>.nav-link-label::after,
header .nav-submenu:is(.is-open,.is-section-active)>.nav-submenu-row>a>.nav-link-label::after,
header .nav-submenu-row:has(>.nav-submenu-toggle:focus-visible)>a>.nav-link-label::after{transform:scaleX(1);transform-origin:left center}
@media(hover:hover) and (pointer:fine){header .nav-dropdown-panel a:hover>.nav-link-label::after,header .nav-submenu-row:hover>a>.nav-link-label::after{transform:scaleX(1);transform-origin:left center}}
@media(prefers-reduced-motion:reduce){header .nav-dropdown-panel .nav-link-label::after{transition:none}}
