.service-menu { position: relative; }
.service-menu-toggle { display: inline-flex; align-items: center; gap: 6px; border: 0; padding: 0; background: transparent; color: #0d2421; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.service-menu-toggle span { transition: transform .2s; }
.service-menu-toggle[aria-expanded="true"] span { transform: rotate(180deg); }
.service-submenu { position: absolute; top: calc(100% + 16px); left: -18px; min-width: 180px; padding: 8px; list-style: none; background: #f8f3ec; border: 1px solid #0d2421; border-radius: 10px; box-shadow: 4px 5px 0 rgba(13,36,33,.18); z-index: 120; }
.service-submenu[hidden] { display: none !important; }
.top-nav .service-submenu a { display: block; white-space: nowrap; padding: 12px 10px; border-radius: 5px; color: #0d2421; }
.top-nav .service-submenu a:hover, .top-nav .service-submenu a:focus-visible { background: #e8e0d5; color: #0d2421; }
.service-menu-toggle:focus-visible { outline: 2px solid #d15f50; outline-offset: 5px; }
@media (max-width: 1024px) {
  .service-menu-toggle { width: 100%; padding: 9px 10px; justify-content: space-between; font-size: 16px; font-weight: 700; }
  .service-submenu { position: static; min-width: 0; margin: 4px 0 8px 10px; padding: 4px; box-shadow: none; border-color: rgba(13,36,33,.2); }
}

.service-nav .service-submenu a { display: block; white-space: nowrap; padding: 12px 10px; border-radius: 5px; }
.service-nav .service-submenu a:hover { background: #e8e0d5; }
.service-nav .service-submenu { position: absolute; min-width: 180px; margin: 0; padding: 8px; }
.service-nav .service-menu-toggle { font-size: 14px; padding: 0; }
