/* Shared Services disclosure: click/tap and native links, with no hover dependency. */
.services-navigation { position:relative; flex:0 0 auto; }
.services-toggle { display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:0; border:0; background:transparent; color:rgba(255,255,255,.9); font:inherit; font-size:.86rem; font-weight:700; cursor:pointer; }
.services-toggle:hover { color:var(--white); }
.services-toggle.is-current { box-shadow:0 2px 0 var(--orange); }
.services-chevron { width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); }
.services-toggle[aria-expanded='true'] .services-chevron { transform:translateY(2px) rotate(225deg); }
.services-list { position:absolute; left:-18px; top:calc(100% + 24px); z-index:2; display:grid; gap:0; width:340px; max-height:calc(100dvh - 140px); overflow-y:auto; margin:0; padding:10px; border:1px solid rgba(255,255,255,.18); border-top:3px solid var(--orange); background:var(--navy-deep); color:var(--white); box-shadow:0 16px 38px rgba(5,17,34,.25); list-style:none; }
.services-list[hidden] { display:none; }
.site-nav .services-list a:not(.button) { display:block; padding:12px 14px; border:0; font-size:.86rem; line-height:1.4; color:var(--white); box-shadow:none; }
.site-nav .services-list a:hover { background:rgba(255,255,255,.08); }
.site-nav .services-list a[aria-current='page'] { border-left:3px solid var(--orange); padding-left:11px; background:rgba(255,255,255,.08); }
.services-list a:focus-visible { outline:2px solid var(--white); outline-offset:-2px; background:rgba(255,255,255,.08); }
@media(min-width:861px) and (max-width:1100px) { .services-toggle { font-size:.78rem; gap:7px; } }
@media(max-width:860px) {
  .services-navigation { width:100%; }
  .services-toggle { width:100%; justify-content:space-between; padding:18px 8px; border-bottom:1px solid rgba(255,255,255,.12); font-size:1.02rem; text-align:left; }
  .services-toggle.is-current { box-shadow:inset 3px 0 0 var(--orange); }
  .services-list { position:static; width:auto; max-height:none; overflow:visible; margin:4px 8px 12px; padding:0 0 0 12px; border:0; border-left:2px solid var(--orange); box-shadow:none; }
  .site-nav .services-list a:not(.button) { padding:14px 12px; font-size:.94rem; border-bottom:1px solid rgba(255,255,255,.1); }
  .site-nav .services-list a[aria-current='page'] { padding-left:9px; }
}
