.website-header { position: relative; z-index: 60; }
.website-specialties { position: relative; flex: none; min-width: 0; }
.website-specialties > summary { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-height: 44px; padding-block: 6px; list-style: none; font: inherit; font-size: 14px; font-weight: 700; line-height: 1.5; letter-spacing: 0; white-space: nowrap; color: var(--website-muted); cursor: pointer; }
.website-specialties > summary::-webkit-details-marker { display: none; }
.website-specialties > summary .bi { font-size: 12px; }
.website-specialties[open] > summary { color: var(--website-primary-dark); }
.website-specialties[open] > summary .bi { transform: rotate(180deg); }
.website-specialties > summary:focus-visible { outline: 2px solid var(--website-primary-dark); outline-offset: 4px; }
.website-specialties-panel { position: absolute; inset-inline-start: 0; top: calc(100% + 6px); z-index: 5; width: 252px; max-width: calc(100vw - 36px); max-height: min(440px, calc(100dvh - 130px)); overflow: auto; padding: 6px; border: 1px solid var(--website-line); border-radius: 6px; background: #fff; box-shadow: 0 8px 24px #173b461f; }
.website-body .website-nav .website-specialties-panel > a { display: flex; align-items: center; flex: none; width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: 8px 12px; border: 0; border-radius: 4px; background: transparent; color: var(--website-text); font-size: 14px; font-weight: 600; line-height: 1.7; letter-spacing: 0; white-space: normal; overflow-wrap: anywhere; text-align: start; }
.website-body .website-nav .website-specialties-panel > a:hover, .website-body .website-nav .website-specialties-panel > a:focus-visible { background: #e7f6f4; color: var(--website-primary-dark); }
.website-menu-dialog .website-specialties { width: 100%; }
.website-menu-dialog .website-specialties > summary { min-height: 48px; padding: 10px 14px; font-size: 14px; color: var(--website-text); }
.website-menu-dialog .website-specialties-panel { position: static; width: 100%; max-width: none; max-height: none; overflow: visible; padding: 0; padding-inline-start: 12px; border: 0; border-inline-start: 2px solid var(--website-line); border-radius: 0; box-shadow: none; background: transparent; }
@media (min-width: 768px) and (max-width: 1280px) {
    .website-header .website-nav-shell { flex-wrap: wrap; }
    .website-header .website-nav { order: 3; flex-basis: 100%; flex-wrap: wrap; gap: 8px 14px; }
}
@media (max-width: 767px) {
    .website-specialties { flex: 1 1 100%; }
    .website-specialties > summary { padding-inline: 12px; }
    .website-specialties-panel { position: static; width: 100%; max-width: 100%; max-height: none; box-shadow: none; }
}
