.kin-directory-filters {
  width: 100%;
}

.kin-directory-filter-row {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  align-items: end;
  width: 100%;
}

.kin-directory-filter-row .filter-field,
.kin-directory-filter-row .filter-select-wrap,
.kin-directory-filter-row select {
  width: 100%;
  min-width: 0;
}

.kin-directory-commune-field {
  animation: kin-directory-field-in 180ms ease both;
}

@keyframes kin-directory-field-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* The practitioner viewport itself now starts on the same edge as the filters.
   Navigation controls float over the component instead of consuming side columns. */
.team-carousel {
  position: relative !important;
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.team-carousel .team-grid {
  width: 100%;
  max-width: 100%;
  padding: 4px 2px 12px !important;
  overscroll-behavior-inline: contain;
  scrollbar-color: transparent transparent;
  -ms-overflow-style: none;
}

.team-carousel .team-grid::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}

.team-carousel .team-nav {
  position: absolute;
  z-index: 4;
  top: var(--team-nav-center, 210px);
  margin: 0;
  transform: translateY(-50%);
}

.team-carousel .team-nav:first-of-type {
  left: 10px;
}

.team-carousel .team-nav:last-of-type {
  right: 10px;
}

/* The shared care taxonomy contains exactly three editorial groups. */
.kin-care-menu-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.chips-row a.chip {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  text-decoration: none;
  transition:
    border-color 160ms ease,
    color 160ms ease,
    background-color 160ms ease,
    transform 160ms ease;
}

.chips-row a.chip:hover,
.chips-row a.chip:focus-visible {
  border-color: var(--teal, #287d6b);
  background: rgba(40, 125, 107, 0.07);
  color: var(--teal-deep, #1f5449);
  transform: translateY(-1px);
}

#detailBody[data-specialty="gua-sha"] .detail-head {
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
}

#detailBody[data-specialty="gua-sha"] .detail-head .ph {
  width: min(100%, 420px);
  justify-self: end;
  box-shadow: 0 16px 42px rgba(31, 84, 73, 0.13);
}

@media (max-width: 1080px) {
  .kin-care-menu-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .kin-directory-filter-row {
    grid-template-columns: 1fr;
    gap: 14px !important;
  }

  .team-carousel .team-nav {
    width: 42px;
    height: 42px;
  }

  .team-carousel .team-nav:first-of-type {
    left: 6px;
  }

  .team-carousel .team-nav:last-of-type {
    right: 6px;
  }

  .kin-care-menu-grid {
    grid-template-columns: 1fr !important;
  }

  #detailBody[data-specialty="gua-sha"] .detail-head {
    display: flex;
  }

  #detailBody[data-specialty="gua-sha"] .detail-head .ph {
    width: min(100%, 480px);
    align-self: center;
    justify-self: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kin-directory-commune-field {
    animation: none;
  }
}
