/* Native disclosure navigation: direct service links on every viewport. */
.service-nav{position:relative;color:inherit}
.service-nav>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 0;font:inherit;color:inherit;cursor:pointer;list-style:none}
.service-nav>summary::-webkit-details-marker{display:none}
.service-nav>summary svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform 180ms ease}
.service-nav[open]>summary svg{transform:rotate(180deg)}
.service-nav>summary:focus-visible,.service-nav-panel a:focus-visible{outline:2px solid #04c5e4;outline-offset:4px}
.service-nav-panel{position:absolute;top:calc(100% + 8px);left:-20px;min-width:290px;background:#f1f0ed;color:#070b11;padding:10px;border-radius:6px;box-shadow:0 14px 32px #070b1133;z-index:110}
.service-nav-panel a,.desktop-nav .service-nav-panel a,#ov-direct .site-header .desktop-nav .service-nav-panel a{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px 14px;font-size:16px;line-height:1.25;text-decoration:none;color:#070b11;min-height:50px;border-radius:3px}
.service-nav-panel a svg{height:15px;width:15px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
.service-nav-panel a[aria-current=page],#ov-direct .site-header .desktop-nav .service-nav-panel a[aria-current=page]{background:#e3dde9;color:#5421d0}
.site-header:has(.service-nav[open]){transform:none!important}
@media(hover:hover) and (pointer:fine){.service-nav>summary:hover{color:#04c5e4}.service-nav-panel a:hover,#ov-direct .site-header .desktop-nav .service-nav-panel a:hover{background:#e3dde9;color:#5421d0}}
@media(max-width:760px){.mobile-nav{max-height:calc(100svh - 70px);overflow-y:auto;overscroll-behavior:contain}.mobile-nav .service-nav>summary{font-size:25px;padding:13px 0;justify-content:space-between}.mobile-nav .service-nav-panel{position:static;min-width:0;background:transparent;color:#f1f0ed;box-shadow:none;border-radius:0;padding:0 0 12px 16px;border-left:1px solid #8a43f6;margin:4px 0 14px}.mobile-nav .service-nav-panel a,#ov-direct .mobile-nav .service-nav-panel a{font-size:18px;line-height:1.25;color:#f1f0ed;padding:12px;min-height:48px}.mobile-nav .service-nav-panel a[aria-current=page]{color:#04c5e4;background:#211a30}}
@media(prefers-reduced-motion:reduce){.service-nav>summary svg{transition:none}}

.project-nav>summary.button{display:flex;gap:16px;min-height:45px;padding:13px 17px;font-size:14px;line-height:1.2;white-space:nowrap;background:#5421d0;color:#fff;border-radius:4px}.project-nav .service-nav-panel{left:auto;right:0;min-width:305px;text-align:left}.project-nav .service-nav-panel strong{display:block;font-weight:500}.project-nav .service-nav-panel small{display:block;font-size:12px;margin-top:4px;font-weight:400;line-height:1.4}.project-nav .service-nav-panel a{color:#070b11!important}.site-header>.project-nav{flex-shrink:0}.footer-cta>.project-nav .service-nav-panel{top:auto;bottom:calc(100% + 8px)}
@media(max-width:760px){.site-header>.project-nav{margin-left:auto;position:static}.project-nav>summary.button,#ov-application-header .project-nav>summary.button{font-size:12px;min-height:44px;padding:12px;gap:8px}.site-header>.project-nav .service-nav-panel{position:absolute;width:min(305px,calc(100vw - 40px));min-width:0;right:12px}.mobile-nav .project-nav .service-nav-panel{right:auto}.mobile-nav .project-nav .service-nav-panel a{color:#f1f0ed!important}}

/* Footer menus open upward without being clipped by the footer's rounded shell. */
.site-footer:has(.project-nav[open]){overflow:visible;position:relative;z-index:5}
.footer-cta>.project-nav{flex-shrink:0}
@media(max-width:760px){.footer-cta>.project-nav .service-nav-panel{left:0;right:auto;width:min(305px,calc(100vw - 80px));min-width:0}}
