/* Services dropdown, shared by every page header. Native <details>, so it works without JS. */
.nav-drop{position:relative}
.nav-drop summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:500;font-size:13.5px;color:var(--ink);padding-bottom:3px;user-select:none}
.nav-drop summary::-webkit-details-marker{display:none}
.nav-drop summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.nav-drop[open] summary::after{transform:translateY(1px) rotate(-135deg)}
.nav-drop summary:focus-visible{outline:2px solid var(--olive);outline-offset:4px}
.nav-drop ul{list-style:none;margin:0;position:absolute;top:calc(100% + 14px);left:-20px;min-width:210px;background:var(--ivory);border:1px solid var(--line);box-shadow:0 18px 40px -24px rgba(38,37,31,.45);padding:8px 0;z-index:200}
.nav-drop ul li{width:auto}
.nav-drop ul a{display:block;padding:11px 20px;white-space:nowrap;text-decoration:none;font-weight:500;font-size:13.5px;color:var(--ink)}
.nav-drop ul a::after{display:none!important}
.nav-drop ul a:hover,.nav-drop ul a[aria-current]{color:var(--olive)}
@media(max-width:900px){
  .nav-links.open{max-height:calc(100vh - 64px);overflow-y:auto}
  .nav-links .nav-drop summary{justify-content:space-between;padding:17px 22px;border-bottom:1px solid var(--line);font-size:15px}
  .nav-links .nav-drop ul{position:static;min-width:0;border:0;box-shadow:none;padding:0;background:transparent}
  .nav-links .nav-drop ul a{padding:15px 22px 15px 40px;font-size:15px;border-bottom:1px solid var(--line)}
}
/* Minimal landing headers (pricing page): dropdown sits beside the CTA */
.header-inner .nav-drop{margin-left:auto}
.header-inner .nav-drop ul{left:auto;right:-10px}
@media(max-width:760px){.header-inner .nav-drop summary{font-size:12px;gap:6px}}
/* Phones: the sticky bottom bar already carries "Request a callback", so drop the duplicate header button */
@media(max-width:480px){.header-inner .nav-drop~.button.small{display:none}.header-inner .nav-drop summary{font-size:13px}}
/* hover dropdowns sit flush so the pointer can travel into them */
@media(hover:hover) and (pointer:fine) and (min-width:901px){.nav-drop>ul::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}}
/* single mobile CTA */
.m-book{display:none}
@media(max-width:900px){.m-book{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:140;justify-content:center;align-items:center;padding:15px 20px;border-radius:999px;background:var(--olive,#49523F);color:#FBF9F3;font:600 15px/1 'Karla',sans-serif;text-decoration:none;box-shadow:0 14px 30px -14px rgba(38,37,31,.6)}body.has-m-book{padding-bottom:76px}}
