/* Services disclosure: the label remains a normal link. */
.site-header nav>.nav-item{position:relative;display:flex;align-items:center;gap:3px;flex-shrink:0}
.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;min-height:44px;padding:4px;border:0;background:none;color:inherit;cursor:pointer}
.submenu-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .25s ease}.submenu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.nav-submenu{display:none}.is-submenu-open>.nav-submenu{display:block}
.site-header .nav-submenu{position:absolute;top:100%;left:-18px;width:300px;padding:12px;background:var(--om-surface);border:1px solid var(--om-line);border-radius:8px;box-shadow:0 12px 28px #00000020;z-index:60}
.site-header .nav-submenu .nav-item{display:block}.site-header nav .nav-submenu a{display:block;padding:10px 12px;font-size:16px;line-height:1.5;white-space:normal;border-radius:3px}
.site-header .nav-submenu a:hover,.site-header .nav-submenu a:focus-visible{background:var(--accent-subtle)}
.mobile-navigation nav>.nav-item{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center}.mobile-navigation nav>.nav-item:not(.has-submenu)>a{grid-column:1/-1}
.mobile-navigation .submenu-toggle{width:44px;min-height:60px}.mobile-navigation .nav-submenu{grid-column:1/-1;padding:0 0 16px 34px;border-bottom:1px solid var(--om-line)}
.mobile-navigation nav .nav-submenu a{font:16px/1.5 Arial,sans-serif;padding:12px 0;border:0;counter-increment:none;animation:none}.mobile-navigation nav .nav-submenu a::before{content:none}
.dark .hero h1{text-wrap:balance}
@media(prefers-reduced-motion:reduce){.submenu-toggle svg{transition:none}}

.mobile-navigation nav>.nav-item{counter-increment:menu}.mobile-navigation nav>.nav-item>a{counter-increment:none}

/* Editable non-link labels organise the existing Services disclosure. */
.nav-submenu .nav-group-label{padding:10px 12px 6px;color:var(--om-secondary);font:16px/1.4 Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}
.nav-submenu .nav-group-label:not(:first-child){margin-top:8px;padding-top:16px;border-top:1px solid var(--om-line)}
.mobile-navigation .nav-submenu .nav-group-label{padding:14px 0 6px;letter-spacing:1px}
.mobile-navigation .nav-submenu .nav-group-label:not(:first-child){margin-top:8px;padding-top:20px}

/* Keep the parent section selected on its child pages. */
.site-header nav>.is-current-section>a{box-shadow:0 2px var(--accent)}
.mobile-navigation nav>.is-current-section>a{color:var(--accent-text)}

/* Preserve the masthead sentence break on desktop, allow natural mobile wrapping. */
@media(min-width:901px){.hero h1>span{white-space:nowrap}}
