/* Shared "Services" dropdown for the static customer pages. Markup lives inline in each page (crawlable). */
.hdr-actions { display:flex; align-items:center; gap:8px; flex:none; }
.site-nav { position:relative; margin:0; }
.site-nav summary { list-style:none; display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:44px; min-width:44px; padding:10px 12px; border:1.5px solid rgba(28,26,23,0.22); border-radius:2px; font-weight:900; font-size:13px; color:#1C1A17; cursor:pointer; user-select:none; background:transparent; transition:background-color .15s ease, color .15s ease; }
.site-nav summary::-webkit-details-marker { display:none; }
.site-nav summary::marker { content:""; }
.site-nav summary:hover, .site-nav[open] summary { background:#1C1A17; color:#F5F4F0; }
.site-nav summary:focus-visible { outline:2px solid #C84B31; outline-offset:2px; }
.site-nav summary svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.site-nav summary .caret { width:11px; height:11px; transition:transform .2s ease; }
.site-nav[open] summary .caret { transform:rotate(180deg); }
.site-nav summary .lbl, .site-nav summary .caret { display:none; }
@media (min-width:480px) {
  .site-nav summary .lbl, .site-nav summary .caret { display:inline-flex; }
  .site-nav summary .burger { display:none; }
}
.site-nav .menu { position:absolute; right:0; top:calc(100% + 8px); width:max-content; max-width:min(92vw, 820px); margin:0; padding:12px 14px 10px; list-style:none; background:#FBFAF6; border:1px solid rgba(28,26,23,0.15); box-shadow:0 18px 40px -16px rgba(28,26,23,0.45); z-index:60; transform-origin:top right; animation:siteNavIn .15s ease; display:grid; grid-template-columns:repeat(3, auto); column-gap:22px; color:#182848; }
@keyframes siteNavIn { from { opacity:0; transform:translateY(-4px) scale(0.98); } to { opacity:1; transform:none; } }
.site-nav .menu ul { list-style:none; margin:0; padding:0; }
.site-nav .menu li.grp, .site-nav .menu li.grp:first-child { margin:0; padding:0; }
.site-nav .grp-h { display:flex; align-items:center; gap:8px; font-family:"Courier New",monospace; font-size:9.5px; font-weight:bold; letter-spacing:.22em; text-transform:uppercase; color:#4A5A72; padding:4px 4px 6px; white-space:nowrap; }
.site-nav .grp-h .rule { display:inline-block; width:16px; height:2px; background:#EE7623; flex:none; }
.site-nav .menu a { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:40px; padding:8px 8px; font-size:13.5px; font-weight:500; color:#182848; text-decoration:none; border-radius:1px; transition:background-color .12s ease, color .12s ease; }
.site-nav .menu a:hover, .site-nav .menu a:focus-visible { background:#1B2A22; color:#F5F4F0; outline:none; }
.site-nav .menu a[aria-current="page"] { color:#C84B31; }
.site-nav .menu a[aria-current="page"]::after { content:""; width:6px; height:6px; border-radius:50%; background:#C84B31; flex:none; }
.site-nav .menu a[aria-current="page"]:hover { color:#F5F4F0; }
.site-nav .util { grid-column:1 / -1; border-top:1px solid rgba(28,26,23,0.1); margin-top:8px; padding-top:6px; }
.site-nav .util-list { display:flex; flex-wrap:wrap; align-items:center; gap:2px 6px; }
.site-nav .util-list a { font-size:12px; font-weight:400; color:#4A5A72; min-height:40px; }
.site-nav .new { display:inline-block; margin-left:8px; background:#C84B31; color:#F5F4F0; font-family:"Courier New",monospace; font-size:9px; font-weight:bold; letter-spacing:.18em; padding:2px 6px; border-radius:2px; vertical-align:middle; }
.site-nav .new.hide { display:none; }
@media (max-width:719px) {
  .site-nav { position:static; }
  .site-nav .menu { left:0; right:0; top:100%; width:auto; max-width:none; border-left:0; border-right:0; border-radius:0; padding:6px 14px 10px; display:block; }
  .site-nav .grp { padding-top:4px; }
  .site-nav .grp-h { white-space:normal; padding:6px 2px 2px; }
  .site-nav .grp-list { display:grid; grid-template-columns:1fr 1fr; column-gap:8px; }
  .site-nav .menu a { font-size:14.5px; min-height:48px; padding:6px 6px; line-height:1.2; }
  .site-nav .util { margin-top:6px; padding-top:4px; }
  .site-nav .util-list a { min-height:44px; font-size:12.5px; }
  .wrap > header.top .site-nav .menu { left:-18px; right:-18px; }
}
@media (max-width:399px) {
  .hdr-actions { gap:6px; }
  header.top .brand { min-width:0; flex:1 1 auto; }
  header.top .brand > div { min-width:0; }
  header.top .brand b { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  header.top .brand small { font-size:10px; letter-spacing:1.2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
}
